]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/Common/String.py
Sync BaseTool trunk (version r2640) into EDKII BaseTools.
[mirror_edk2.git] / BaseTools / Source / Python / Common / String.py
index c282326677f6f49d6b58fc5fb0adc424d8dc6901..04b45a0b83d1b12a990b8e18f9de0870f6d1ad2c 100644 (file)
@@ -401,16 +401,6 @@ def CleanString2(Line, CommentCharacter=DataType.TAB_COMMENT_SPLIT, AllowCppStyl
             Comment = Line[Index:].strip()\r
             Line = Line[0:Index].strip()\r
             break\r
-    if Comment:\r
-        # Remove prefixed and trailing comment characters\r
-        Start = 0\r
-        End = len(Comment)\r
-        while Start < End and Comment.startswith(CommentCharacter, Start, End):\r
-            Start += 1\r
-        while End >= 0 and Comment.endswith(CommentCharacter, Start, End):\r
-            End -= 1\r
-        Comment = Comment[Start:End]\r
-        Comment = Comment.strip()\r
 \r
     return Line, Comment\r
 \r
@@ -811,11 +801,25 @@ def StringToArray(String):
             return "{%s, 0x00, 0x00}" % ", ".join(["0x%02x, 0x00" % ord(C) for C in String[2:-1]])\r
     elif String.startswith('"'):\r
         if String == "\"\"":\r
-            return "{0x00}";\r
+            return "{0x00,0x00}"\r
         else:\r
-            return "{%s, 0x00}" % ", ".join(["0x%02x" % ord(C) for C in String[1:-1]])\r
+            StringLen = len(String[1:-1])\r
+            if StringLen % 2:\r
+                return "{%s, 0x00}" % ", ".join(["0x%02x" % ord(C) for C in String[1:-1]])\r
+            else:\r
+                return "{%s, 0x00,0x00}" % ", ".join(["0x%02x" % ord(C) for C in String[1:-1]])\r
+    elif String.startswith('{'):\r
+        StringLen = len(String.split(","))\r
+        if StringLen % 2:\r
+            return "{%s, 0x00}" % ", ".join([ C for C in String[1:-1].split(',')])\r
+        else:\r
+            return "{%s}" % ", ".join([ C for C in String[1:-1].split(',')])\r
+        \r
     else:\r
-        return '{%s, 0}' % ', '.join(String.split())\r
+        if len(String.split()) % 2:\r
+            return '{%s, 0}' % ', '.join(String.split())\r
+        else:\r
+            return '{%s, 0,0}' % ', '.join(String.split())\r
 \r
 def StringArrayLength(String):\r
     if isinstance(String, unicode):\r