]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Scripts/BinToPcd.py
BaseTools/BinToPcd: Encode string returned from ByteArray()
[mirror_edk2.git] / BaseTools / Scripts / BinToPcd.py
index 10b5043325cc23d8872b99e2d8397d409019fd89..1495a36933c4ce5516aeb6bd48f4e8465da20fc3 100644 (file)
@@ -41,13 +41,13 @@ if __name__ == '__main__':
         return Value\r
 \r
     def ValidatePcdName (Argument):\r
-        if re.split ('[a-zA-Z\_][a-zA-Z0-9\_]*\.[a-zA-Z\_][a-zA-Z0-9\_]*', Argument) != ['','']:\r
+        if re.split ('[a-zA-Z\_][a-zA-Z0-9\_]*\.[a-zA-Z\_][a-zA-Z0-9\_]*', Argument) != ['', '']:\r
             Message = '{Argument} is not in the form <PcdTokenSpaceGuidCName>.<PcdCName>'.format (Argument = Argument)\r
             raise argparse.ArgumentTypeError (Message)\r
         return Argument\r
 \r
     def ValidateGuidName (Argument):\r
-        if re.split ('[a-zA-Z\_][a-zA-Z0-9\_]*', Argument) != ['','']:\r
+        if re.split ('[a-zA-Z\_][a-zA-Z0-9\_]*', Argument) != ['', '']:\r
             Message = '{Argument} is not a valid GUID C name'.format (Argument = Argument)\r
             raise argparse.ArgumentTypeError (Message)\r
         return Argument\r
@@ -66,11 +66,12 @@ if __name__ == '__main__':
             #\r
             # If Xdr flag is not set, then concatenate all the data\r
             #\r
-            Buffer = b''.join (Buffer)\r
+            Buffer = bytearray (b''.join (Buffer))\r
         #\r
         # Return a PCD value of the form '{0x01, 0x02, ...}' along with the PCD length in bytes\r
         #\r
-        return '{' + (', '.join (['0x{Byte:02X}'.format (Byte = Item) for Item in Buffer])) + '}', len (Buffer)\r
+        PcdValue = '{' + ', '.join (['0x{Byte:02X}'.format (Byte = Item) for Item in Buffer]) + '}'\r
+        return PcdValue.encode (), len (Buffer)\r
 \r
     #\r
     # Create command line argument parser object\r
@@ -84,7 +85,7 @@ if __name__ == '__main__':
                          help = "Output filename for PCD value or PCD statement")\r
     parser.add_argument ("-p", "--pcd", dest = 'PcdName', type = ValidatePcdName,\r
                          help = "Name of the PCD in the form <PcdTokenSpaceGuidCName>.<PcdCName>")\r
-    parser.add_argument ("-t", "--type", dest = 'PcdType', default = None, choices = ['VPD','HII'],\r
+    parser.add_argument ("-t", "--type", dest = 'PcdType', default = None, choices = ['VPD', 'HII'],\r
                          help = "PCD statement type (HII or VPD).  Default is standard.")\r
     parser.add_argument ("-m", "--max-size", dest = 'MaxSize', type = ValidateUnsignedInteger,\r
                          help = "Maximum size of the PCD.  Ignored with --type HII.")\r