BaseTools: Fixed Pcd value override issue.

1. Handle the Pcd maxsize issue for the case
that the length of Pcd value from CommandLine
bigger that its maxsize

2. The Pcd value override in commandline.

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>
This commit is contained in:
BobCF
2018-03-02 18:11:13 +08:00
committed by Liming Gao
parent 0537f332c9
commit b854e2bf75
5 changed files with 157 additions and 62 deletions

View File

@ -129,6 +129,8 @@ class StructurePcd(PcdClassObject):
self.PkgPath = ""
self.DefaultValueFromDec = ""
self.ValueChain = dict()
self.PcdValueFromComm = ""
self.PcdFieldValueFromComm = collections.OrderedDict({})
def __repr__(self):
return self.TypeName
@ -188,6 +190,8 @@ class StructurePcd(PcdClassObject):
self.PcdDefineLineNo = PcdObject.PcdDefineLineNo if PcdObject.PcdDefineLineNo else self.PcdDefineLineNo
self.PkgPath = PcdObject.PkgPath if PcdObject.PkgPath else self.PkgPath
self.ValueChain = PcdObject.ValueChain if PcdObject.ValueChain else self.ValueChain
self.PcdValueFromComm = PcdObject.PcdValueFromComm if PcdObject.PcdValueFromComm else self.PcdValueFromComm
self.PcdFieldValueFromComm = PcdObject.PcdFieldValueFromComm if PcdObject.PcdFieldValueFromComm else self.PcdFieldValueFromComm
## LibraryClassObject
#