[edk2] [Patch] BaseTools: Fix a bug for BOOLEAN type value in Asbuilt inf

Yonghong Zhu posted 1 patch 7 years, 6 months ago
Failed in applying to current master (apply log)
BaseTools/Source/Python/AutoGen/AutoGen.py | 7 +++++++
1 file changed, 7 insertions(+)
[edk2] [Patch] BaseTools: Fix a bug for BOOLEAN type value in Asbuilt inf
Posted by Yonghong Zhu 7 years, 6 months ago
When the PCD value is set to TRUE or FALSE, while it is not exchanged to
its int value, it cause error in the function int(Pcd.DefaultValue, 0).

Cc: Liming Gao <liming.gao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
---
 BaseTools/Source/Python/AutoGen/AutoGen.py | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/BaseTools/Source/Python/AutoGen/AutoGen.py b/BaseTools/Source/Python/AutoGen/AutoGen.py
index 3d3dfef..75464b8 100644
--- a/BaseTools/Source/Python/AutoGen/AutoGen.py
+++ b/BaseTools/Source/Python/AutoGen/AutoGen.py
@@ -3923,10 +3923,17 @@ class ModuleAutoGen(AutoGen):
                     if TokenCName == PatchPcd[0]:
                         break
                 else:
                     continue
                 PcdValue = ''
+                if Pcd.DatumType == 'BOOLEAN':
+                    BoolValue = Pcd.DefaultValue.upper()
+                    if BoolValue == 'TRUE':
+                        Pcd.DefaultValue = '1'
+                    elif BoolValue == 'FALSE':
+                        Pcd.DefaultValue = '0'
+
                 if Pcd.DatumType != 'VOID*':
                     HexFormat = '0x%02x'
                     if Pcd.DatumType == 'UINT16':
                         HexFormat = '0x%04x'
                     elif Pcd.DatumType == 'UINT32':
-- 
2.6.1.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [Patch] BaseTools: Fix a bug for BOOLEAN type value in Asbuilt inf
Posted by Gao, Liming 7 years, 6 months ago
Reviewed-by: Liming Gao <liming.gao@intel.com>

>-----Original Message-----
>From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
>Yonghong Zhu
>Sent: Wednesday, April 26, 2017 6:36 PM
>To: edk2-devel@lists.01.org
>Cc: Gao, Liming <liming.gao@intel.com>
>Subject: [edk2] [Patch] BaseTools: Fix a bug for BOOLEAN type value in Asbuilt
>inf
>
>When the PCD value is set to TRUE or FALSE, while it is not exchanged to
>its int value, it cause error in the function int(Pcd.DefaultValue, 0).
>
>Cc: Liming Gao <liming.gao@intel.com>
>Contributed-under: TianoCore Contribution Agreement 1.0
>Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
>---
> BaseTools/Source/Python/AutoGen/AutoGen.py | 7 +++++++
> 1 file changed, 7 insertions(+)
>
>diff --git a/BaseTools/Source/Python/AutoGen/AutoGen.py
>b/BaseTools/Source/Python/AutoGen/AutoGen.py
>index 3d3dfef..75464b8 100644
>--- a/BaseTools/Source/Python/AutoGen/AutoGen.py
>+++ b/BaseTools/Source/Python/AutoGen/AutoGen.py
>@@ -3923,10 +3923,17 @@ class ModuleAutoGen(AutoGen):
>                     if TokenCName == PatchPcd[0]:
>                         break
>                 else:
>                     continue
>                 PcdValue = ''
>+                if Pcd.DatumType == 'BOOLEAN':
>+                    BoolValue = Pcd.DefaultValue.upper()
>+                    if BoolValue == 'TRUE':
>+                        Pcd.DefaultValue = '1'
>+                    elif BoolValue == 'FALSE':
>+                        Pcd.DefaultValue = '0'
>+
>                 if Pcd.DatumType != 'VOID*':
>                     HexFormat = '0x%02x'
>                     if Pcd.DatumType == 'UINT16':
>                         HexFormat = '0x%04x'
>                     elif Pcd.DatumType == 'UINT32':
>--
>2.6.1.windows.1
>
>_______________________________________________
>edk2-devel mailing list
>edk2-devel@lists.01.org
>https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel