This patch is a bug fix about FeatureFlagExpression in INF file:
INF [Source] section now unconditionally use Pcd default value in DEC
when handling FeatureFlagExpression, it is wrong.
If a Pcd value has been set in the DSC file, we should use latest
value in DSC instead of default value.
Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Signed-off-by: Yi Li <yi1.li@intel.com>
Reviewed-by: Bob Feng <bob.c.feng@intel.com>
else:\r
for Name, Guid in self.Pcds:\r
if self.Pcds[(Name, Guid)].Type == 'FeatureFlag' or self.Pcds[(Name, Guid)].Type == 'FixedAtBuild':\r
- Pcds['%s.%s' % (Guid, Name)] = self.Pcds[(Name, Guid)].DefaultValue\r
+ PcdFullName = '%s.%s' % (Guid, Name);\r
+ if not PcdFullName in Pcds:\r
+ Pcds[PcdFullName] = self.Pcds[(Name, Guid)].DefaultValue\r
try:\r
Value = ValueExpression(Instance, Pcds)()\r
if Value == True:\r