public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [Patch V3] BaseTools: Fixed the build fail issue for cases
@ 2018-12-11  9:03 BobCF
  2018-12-11 13:42 ` Gao, Liming
  0 siblings, 1 reply; 2+ messages in thread
From: BobCF @ 2018-12-11  9:03 UTC (permalink / raw)
  To: edk2-devel; +Cc: Feng, Bob C, Liming Gao, Leif Lindholm

From: "Feng, Bob C" <bob.c.feng@intel.com>

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 <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Leif Lindholm <leif.lindholm@linaro.org>
---
 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



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [Patch V3] BaseTools: Fixed the build fail issue for cases
  2018-12-11  9:03 [Patch V3] BaseTools: Fixed the build fail issue for cases BobCF
@ 2018-12-11 13:42 ` Gao, Liming
  0 siblings, 0 replies; 2+ messages in thread
From: Gao, Liming @ 2018-12-11 13:42 UTC (permalink / raw)
  To: Feng, Bob C, edk2-devel@lists.01.org

Reviewed-by: Liming Gao <liming.gao@intel.com>

> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of BobCF
> Sent: Tuesday, December 11, 2018 5:04 PM
> To: edk2-devel@lists.01.org
> Cc: Gao, Liming <liming.gao@intel.com>
> Subject: [edk2] [Patch V3] BaseTools: Fixed the build fail issue for cases
> 
> From: "Feng, Bob C" <bob.c.feng@intel.com>
> 
> 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 <bob.c.feng@intel.com>
> Cc: Liming Gao <liming.gao@intel.com>
> Cc: Leif Lindholm <leif.lindholm@linaro.org>
> ---
>  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
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-12-11 13:43 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-12-11  9:03 [Patch V3] BaseTools: Fixed the build fail issue for cases BobCF
2018-12-11 13:42 ` Gao, Liming

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox