Reviewed-by: Liming Gao <[email protected]>

> -----Original Message-----
> From: edk2-devel [mailto:[email protected]] On Behalf Of BobCF
> Sent: Tuesday, December 11, 2018 5:04 PM
> To: [email protected]
> Cc: Gao, Liming <[email protected]>
> Subject: [edk2] [Patch V3] BaseTools: Fixed the build fail issue for cases
> 
> From: "Feng, Bob C" <[email protected]>
> 
> https://bugzilla.tianocore.org/show_bug.cgi?id=1386
> This patch is going to fix the regression issue that is
> introduced by commit 72a1d77694d51914c0dd6aa97dbfa58634b0a4a5
> 
> The issue will happen in the following cases:
> 1. There is no Pcd value assignment in Dsc file
> 2. There are duplicate Pcd filed assignment
> 
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Bob Feng <[email protected]>
> Cc: Liming Gao <[email protected]>
> Cc: Leif Lindholm <[email protected]>
> ---
>  BaseTools/Source/Python/Workspace/BuildClassObject.py | 2 +-
>  BaseTools/Source/Python/Workspace/MetaFileParser.py   | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/BaseTools/Source/Python/Workspace/BuildClassObject.py 
> b/BaseTools/Source/Python/Workspace/BuildClassObject.py
> index 008eee1a16..d02232b546 100644
> --- a/BaseTools/Source/Python/Workspace/BuildClassObject.py
> +++ b/BaseTools/Source/Python/Workspace/BuildClassObject.py
> @@ -289,11 +289,11 @@ class StructurePcd(PcdClassObject):
>          if DefaultStoreName not in self.SkuOverrideValues[SkuName]:
>              self.SkuOverrideValues[SkuName][DefaultStoreName] = OrderedDict()
>          if DimensionAttr not in 
> self.SkuOverrideValues[SkuName][DefaultStoreName]:
>              self.SkuOverrideValues[SkuName][DefaultStoreName][DimensionAttr] 
> = collections.OrderedDict()
>          if FieldName in 
> self.SkuOverrideValues[SkuName][DefaultStoreName][DimensionAttr]:
> -            del 
> self.SkuOverrideValues[SkuName][DefaultStoreName][FieldName][DimensionAttr]
> +            del 
> self.SkuOverrideValues[SkuName][DefaultStoreName][DimensionAttr][FieldName]
>          
> self.SkuOverrideValues[SkuName][DefaultStoreName][DimensionAttr][FieldName] = 
> [Value.strip(), FileName, LineNo]
>          return 
> self.SkuOverrideValues[SkuName][DefaultStoreName][DimensionAttr][FieldName]
> 
>      def SetPcdMode (self, PcdMode):
>          self.PcdMode = PcdMode
> diff --git a/BaseTools/Source/Python/Workspace/MetaFileParser.py 
> b/BaseTools/Source/Python/Workspace/MetaFileParser.py
> index 4bd52619a9..eaedba0c12 100644
> --- a/BaseTools/Source/Python/Workspace/MetaFileParser.py
> +++ b/BaseTools/Source/Python/Workspace/MetaFileParser.py
> @@ -1201,11 +1201,11 @@ class DscParser(MetaFileParser):
>              else:
>                  self._ValueList = None
>                  return
>          TokenList = GetSplitValueList(self._CurrentLine, TAB_VALUE_SPLIT, 1)
>          self._CurrentPcdName = TokenList[0]
> -        if TokenList[1].strip().startswith("{CODE"):
> +        if len(TokenList) == 2 and TokenList[1].strip().startswith("{CODE"):
>              self._PcdDataTypeCODE = True
>              self._PcdCodeValue = TokenList[1].strip()
> 
>          if self._PcdDataTypeCODE:
>              if self._CurrentLine.endswith(")}"):
> --
> 2.19.1.windows.1
> 
> _______________________________________________
> edk2-devel mailing list
> [email protected]
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to