Unicode string should be start with 'L"' or "L'", but like as "Less" is not Unicode string
> -----Original Message----- > From: edk2-devel [mailto:[email protected]] On Behalf Of > Carsey, Jaben > Sent: Thursday, October 18, 2018 2:49 AM > To: Laszlo Ersek <[email protected]>; Zhao, ZhiqiangX > <[email protected]> > Cc: [email protected]; Gao, Liming <[email protected]> > Subject: Re: [edk2] [PATCH] BaseTools: covert "unicode string" to "byte > array" if value type diff. > > > > > -----Original Message----- > > From: edk2-devel [mailto:[email protected]] On Behalf Of > > Laszlo Ersek > > Sent: Wednesday, October 17, 2018 11:37 AM > > To: Zhao, ZhiqiangX <[email protected]> > > Cc: [email protected]; Gao, Liming <[email protected]> > > Subject: Re: [edk2] [PATCH] BaseTools: covert "unicode string" to "byte > > array" if value type diff. > > > > Hi, > > > > On 10/17/18 13:08, Zhaozh1x wrote: > > > For the same one VOID* pcd, if the default value type of one sku is > > > "unicode string", the other skus are "OtherVOID*"(ascii string or > > > byte array),Then covert "unicode string" to "byte array". > > > > > > Contributed-under: TianoCore Contribution Agreement 1.1 > > > Signed-off-by: ZhiqiangX Zhao <[email protected]> > > > Cc: Liming Gao <[email protected]> > > > Cc: Yonghong Zhu <[email protected]> > > > Reviewed-by: Bob Feng <[email protected]> > > > --- > > > BaseTools/Source/Python/Workspace/DscBuildData.py | 9 +++++++++ > > > 1 file changed, 9 insertions(+) > > > > > > diff --git a/BaseTools/Source/Python/Workspace/DscBuildData.py > > b/BaseTools/Source/Python/Workspace/DscBuildData.py > > > index 7854e71db6..9b783de84b 100644 > > > --- a/BaseTools/Source/Python/Workspace/DscBuildData.py > > > +++ b/BaseTools/Source/Python/Workspace/DscBuildData.py > > > @@ -2877,6 +2877,15 @@ class DscBuildData(PlatformBuildClassObject): > > > elif TAB_DEFAULT in pcd.SkuInfoList and TAB_COMMON in > > pcd.SkuInfoList: > > > del pcd.SkuInfoList[TAB_COMMON] > > > > > > + #For the same one VOID* pcd, if the default value type of one > > > sku is > > "unicode string", > > > + #the other skus are "OtherVOID*"(ascii string or byte array),Then > > covert "unicode string" to "byte array". > > > + for pcd in Pcds.values(): > > > + PcdValueTypeList = [] > > > + for sku in pcd.SkuInfoList.values(): > > > + PcdValueTypeList.append("UnicodeString" if > > sku.DefaultValue.startswith("L") else "OtherVOID*") > > > + if "UnicodeString" in PcdValueTypeList and "OtherVOID*" in > > PcdValueTypeList: > > If you use a set instead of a list here, it will save memory any then instead > of > testing for both items being there, you could just check the length being > 1 > which would also be faster than 2 "in" tests. > > > > + for sku in pcd.SkuInfoList.values(): > > > + sku.DefaultValue = StringToArray(sku.DefaultValue) if > > sku.DefaultValue.startswith("L") else sku.DefaultValue > > > > > > map(self.FilterSkuSettings, Pcds.values()) > > > return Pcds > > > > > > > no comments on the code change, just a superficial one on the subject > > line: please replace "covert" with "convert". > > > > There are two more instances of the typo in the patch: in the commit > > message, and in the new code too. (Three occurrences in total.) > > > > Normally I shouldn't obsess about such small typos, in case they don't > > obscure the intended meaning. However, "covert" did confuse me, > because > > it is an existent word, and it has a specific meaning in computing: > > > > https://en.wikipedia.org/wiki/Covert_channel > > > > Thanks! > > Laszlo > > _______________________________________________ > > edk2-devel mailing list > > [email protected] > > https://lists.01.org/mailman/listinfo/edk2-devel > _______________________________________________ > edk2-devel mailing list > [email protected] > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

