summaryrefslogtreecommitdiffstats
path: root/BaseTools/Source
diff options
context:
space:
mode:
authorlgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524>2011-05-25 10:45:15 +0000
committerlgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524>2011-05-25 10:45:15 +0000
commit9fd2164e34b9f3e1aa6bde07f513f43a6a08e588 (patch)
treee01f800ba4a6e59616e8690b5cd113b9982ea00d /BaseTools/Source
parent46cc3885e68cc19981a4756e1a2d40d35f2eb92f (diff)
downloadedk2-9fd2164e34b9f3e1aa6bde07f513f43a6a08e588.tar.gz
edk2-9fd2164e34b9f3e1aa6bde07f513f43a6a08e588.tar.bz2
edk2-9fd2164e34b9f3e1aa6bde07f513f43a6a08e588.zip
Sync BaseTools Branch (version r2157) to EDKII main trunk.
BaseTool Branch: https://edk2-buildtools.svn.sourceforge.net/svnroot/edk2-buildtools/branches/Releases/BaseTools_r2100 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11702 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'BaseTools/Source')
-rw-r--r--BaseTools/Source/C/GenVtf/GenVtf.c37
-rw-r--r--BaseTools/Source/Python/GenFds/FdfParser.py2
2 files changed, 24 insertions, 15 deletions
diff --git a/BaseTools/Source/C/GenVtf/GenVtf.c b/BaseTools/Source/C/GenVtf/GenVtf.c
index 428158ebb8..035c268a2c 100644
--- a/BaseTools/Source/C/GenVtf/GenVtf.c
+++ b/BaseTools/Source/C/GenVtf/GenVtf.c
@@ -119,28 +119,37 @@ Returns:
--*/
{
- CHAR8 StrPtr[40];
- CHAR8 *Token;
+ CHAR8 TemStr[5] = "0000";
unsigned Major;
unsigned Minor;
+ UINTN Length;
Major = 0;
Minor = 0;
- memset (StrPtr, 0, 40);
- Token = strtok (Str, ".");
- while (Token != NULL) {
- strcat (StrPtr, Token);
- Token = strtok (NULL, ".");
+ if (strstr (Str, ".") != NULL) {
+ sscanf (
+ Str,
+ "%02x.%02x",
+ &Major,
+ &Minor
+ );
+ } else {
+ Length = strlen(Str);
+ if (Length < 4) {
+ strncpy (TemStr + 4 - Length, Str, Length);
+ } else {
+ strncpy (TemStr, Str + Length - 4, 4);
+ }
+
+ sscanf (
+ TemStr,
+ "%02x%02x",
+ &Major,
+ &Minor
+ );
}
- sscanf (
- StrPtr,
- "%02d%02d",
- &Major,
- &Minor
- );
-
*MajorVer = (UINT8) Major;
*MinorVer = (UINT8) Minor;
return EFI_SUCCESS;
diff --git a/BaseTools/Source/Python/GenFds/FdfParser.py b/BaseTools/Source/Python/GenFds/FdfParser.py
index 9e7771dc7d..733935afe9 100644
--- a/BaseTools/Source/Python/GenFds/FdfParser.py
+++ b/BaseTools/Source/Python/GenFds/FdfParser.py
@@ -3630,7 +3630,7 @@ class FdfParser:
if not self.__GetNextToken():
raise Warning("expected Component version", self.FileName, self.CurrentLineNumber)
- Pattern = re.compile('-$|[0-9]{0,1}[0-9]{1}\.[0-9]{0,1}[0-9]{1}')
+ Pattern = re.compile('-$|[0-9a-fA-F]{1,2}\.[0-9a-fA-F]{1,2}$', re.DOTALL)
if Pattern.match(self.__Token) == None:
raise Warning("Unknown version format '%s'" % self.__Token, self.FileName, self.CurrentLineNumber)
CompStatementObj.CompVer = self.__Token