]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/Common/Misc.py
BaseTools: Replace StandardError with Expression
[mirror_edk2.git] / BaseTools / Source / Python / Common / Misc.py
index 3d205197abfc4a59500ac94d4e331b19d0e5e04e..01171adb9b9e49754f0163873ae4d8feefe997c1 100644 (file)
@@ -478,7 +478,7 @@ def SaveFileOnChange(File, Content, IsBinaryFile=True):
             Fd = open(File, "wb")\r
             Fd.write(Content)\r
             Fd.close()\r
-    except IOError, X:\r
+    except IOError as X:\r
         EdkLogger.error(None, FILE_CREATE_FAILURE, ExtraData='IOError %s' % X)\r
 \r
     return True\r
@@ -512,7 +512,7 @@ def DataRestore(File):
     try:\r
         Fd = open(File, 'rb')\r
         Data = cPickle.load(Fd)\r
-    except Exception, e:\r
+    except Exception as e:\r
         EdkLogger.verbose("Failed to load [%s]\n\t%s" % (File, str(e)))\r
         Data = None\r
     finally:\r
@@ -833,7 +833,7 @@ class TemplateString(object):
     def Append(self, AppendString, Dictionary=None):\r
         if Dictionary:\r
             SectionList = self._Parse(AppendString)\r
-            self.String += "".join([S.Instantiate(Dictionary) for S in SectionList])\r
+            self.String += "".join(S.Instantiate(Dictionary) for S in SectionList)\r
         else:\r
             self.String += AppendString\r
 \r
@@ -844,7 +844,7 @@ class TemplateString(object):
     #   @retval     str             The string replaced with placeholder values\r
     #\r
     def Replace(self, Dictionary=None):\r
-        return "".join([S.Instantiate(Dictionary) for S in self._TemplateSectionList])\r
+        return "".join(S.Instantiate(Dictionary) for S in self._TemplateSectionList)\r
 \r
 ## Progress indicator class\r
 #\r
@@ -1278,7 +1278,7 @@ def ParseDevPathValue (Value):
     try:\r
         p = subprocess.Popen(Cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)\r
         out, err = p.communicate()\r
-    except Exception, X:\r
+    except Exception as X:\r
         raise BadExpression("DevicePath: %s" % (str(X)) )\r
     finally:\r
         subprocess._cleanup()\r
@@ -1293,7 +1293,7 @@ def ParseDevPathValue (Value):
 def ParseFieldValue (Value):\r
     if type(Value) == type(0):\r
         return Value, (Value.bit_length() + 7) / 8\r
-    if type(Value) <> type(''):\r
+    if type(Value) != type(''):\r
         raise BadExpression('Type %s is %s' %(Value, type(Value)))\r
     Value = Value.strip()\r
     if Value.startswith(TAB_UINT8) and Value.endswith(')'):\r
@@ -1327,8 +1327,8 @@ def ParseFieldValue (Value):
             Value = Value[1:-1]\r
         try:\r
             Value = "'" + uuid.UUID(Value).get_bytes_le() + "'"\r
-        except ValueError, Message:\r
-            raise BadExpression('%s' % Message)\r
+        except ValueError as Message:\r
+            raise BadExpression(Message)\r
         Value, Size = ParseFieldValue(Value)\r
         return Value, 16\r
     if Value.startswith('L"') and Value.endswith('"'):\r
@@ -1926,7 +1926,7 @@ class DefaultStore():
         if not self.DefaultStores or "0" in self.DefaultStores:\r
             return "0",TAB_DEFAULT_STORES_DEFAULT\r
         else:\r
-            minvalue = min([int(value_str) for value_str in self.DefaultStores])\r
+            minvalue = min(int(value_str) for value_str in self.DefaultStores)\r
             return (str(minvalue), self.DefaultStores[str(minvalue)])\r
     def GetMin(self,DefaultSIdList):\r
         if not DefaultSIdList:\r
@@ -2023,7 +2023,7 @@ class SkuClass():
             skuorderset.append(self.GetSkuChain(skuname))\r
         \r
         skuorder = []\r
-        for index in range(max([len(item) for item in skuorderset])):\r
+        for index in range(max(len(item) for item in skuorderset)):\r
             for subset in skuorderset:\r
                 if index > len(subset)-1:\r
                     continue\r
@@ -2087,20 +2087,7 @@ class SkuClass():
 # Pack a registry format GUID\r
 #\r
 def PackRegistryFormatGuid(Guid):\r
-    Guid = Guid.split('-')\r
-    return pack('=LHHBBBBBBBB',\r
-                int(Guid[0], 16),\r
-                int(Guid[1], 16),\r
-                int(Guid[2], 16),\r
-                int(Guid[3][-4:-2], 16),\r
-                int(Guid[3][-2:], 16),\r
-                int(Guid[4][-12:-10], 16),\r
-                int(Guid[4][-10:-8], 16),\r
-                int(Guid[4][-8:-6], 16),\r
-                int(Guid[4][-6:-4], 16),\r
-                int(Guid[4][-4:-2], 16),\r
-                int(Guid[4][-2:], 16)\r
-                )\r
+    return PackGUID(Guid.split('-'))\r
 \r
 ##  Get the integer value from string like "14U" or integer like 2\r
 #\r
@@ -2126,6 +2113,42 @@ def GetIntegerValue(Input):
     else:\r
         return int(String)\r
 \r
+#\r
+# Pack a GUID (registry format) list into a buffer and return it\r
+#\r
+def PackGUID(Guid):\r
+    return pack(PACK_PATTERN_GUID,\r
+                int(Guid[0], 16),\r
+                int(Guid[1], 16),\r
+                int(Guid[2], 16),\r
+                int(Guid[3][-4:-2], 16),\r
+                int(Guid[3][-2:], 16),\r
+                int(Guid[4][-12:-10], 16),\r
+                int(Guid[4][-10:-8], 16),\r
+                int(Guid[4][-8:-6], 16),\r
+                int(Guid[4][-6:-4], 16),\r
+                int(Guid[4][-4:-2], 16),\r
+                int(Guid[4][-2:], 16)\r
+                )\r
+\r
+#\r
+# Pack a GUID (byte) list into a buffer and return it\r
+#\r
+def PackByteFormatGUID(Guid):\r
+    return pack(PACK_PATTERN_GUID,\r
+                Guid[0],\r
+                Guid[1],\r
+                Guid[2],\r
+                Guid[3],\r
+                Guid[4],\r
+                Guid[5],\r
+                Guid[6],\r
+                Guid[7],\r
+                Guid[8],\r
+                Guid[9],\r
+                Guid[10],\r
+                )\r
+\r
 ##\r
 #\r
 # This acts like the main() function for the script, unless it is 'import'ed into another\r