diff options
author | BobCF <bob.c.feng@intel.com> | 2018-03-23 10:24:03 +0800 |
---|---|---|
committer | Liming Gao <liming.gao@intel.com> | 2018-03-23 11:23:50 +0800 |
commit | 0a4f2d48696f094cec73e28a4402775dc6262eef (patch) | |
tree | d057666c089674d1518e4facd22e2ecb151b062a /BaseTools/Source/Python/AutoGen | |
parent | b005802a1c860a0f7ed9a727ce3ffc3ea7f9c441 (diff) | |
download | edk2-0a4f2d48696f094cec73e28a4402775dc6262eef.tar.gz edk2-0a4f2d48696f094cec73e28a4402775dc6262eef.tar.bz2 edk2-0a4f2d48696f094cec73e28a4402775dc6262eef.zip |
BaseTool: Fixed the issue of empty PcdDB.
If there is no dynamic pcds, there should be DB header
in the Pcd DataBase.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/AutoGen')
-rw-r--r-- | BaseTools/Source/Python/AutoGen/GenPcdDb.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/BaseTools/Source/Python/AutoGen/GenPcdDb.py b/BaseTools/Source/Python/AutoGen/GenPcdDb.py index e2848e7aaf..e4d7f3b759 100644 --- a/BaseTools/Source/Python/AutoGen/GenPcdDb.py +++ b/BaseTools/Source/Python/AutoGen/GenPcdDb.py @@ -980,8 +980,6 @@ def CreatePcdDatabaseCode (Info, AutoGenC, AutoGenH): def CreatePcdDataBase(PcdDBData):
delta = {}
basedata = {}
- if not PcdDBData:
- return ""
for skuname,skuid in PcdDBData:
if len(PcdDBData[(skuname,skuid)][1]) != len(PcdDBData[("DEFAULT","0")][1]):
EdkLogger.ERROR("The size of each sku in one pcd are not same")
@@ -1061,9 +1059,12 @@ def NewCreatePcdDatabasePhaseSpecificAutoGen(Platform,Phase): AdditionalAutoGenH, AdditionalAutoGenC = CreateAutoGen(PcdDriverAutoGenData)
else:
AdditionalAutoGenH, AdditionalAutoGenC, PcdDbBuffer,VarCheckTab = CreatePcdDatabasePhaseSpecificAutoGen (Platform,{}, Phase)
+ final_data = ()
+ for item in PcdDbBuffer:
+ final_data += unpack("B",item)
+ PcdDBData[("DEFAULT","0")] = (PcdDbBuffer, final_data)
- PcdDbBuffer = CreatePcdDataBase(PcdDBData)
- return AdditionalAutoGenH, AdditionalAutoGenC, PcdDbBuffer
+ return AdditionalAutoGenH, AdditionalAutoGenC, CreatePcdDataBase(PcdDBData)
## Create PCD database in DXE or PEI phase
#
# @param Platform The platform object
|