BaseTools: Handle the bytes and str difference
Deal with bytes and str is different, remove the unicode(), correct open file parameter. Using utcfromtimestamp instead of fromtimestamp. Cc: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Zhiju.Fan <zhijux.fan@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Bob Feng <bob.c.feng@intel.com>
This commit is contained in:
@ -94,13 +94,13 @@ class PcdClassObject(object):
|
||||
deme = ArrayIndex.findall(demesionattr)
|
||||
for i in range(len(deme)-1):
|
||||
if int(deme[i].lstrip("[").rstrip("]").strip()) > int(self._Capacity[i]):
|
||||
print "error"
|
||||
print ("error")
|
||||
if hasattr(self,"DefaultValues"):
|
||||
for demesionattr in self.DefaultValues:
|
||||
deme = ArrayIndex.findall(demesionattr)
|
||||
for i in range(len(deme)-1):
|
||||
if int(deme[i].lstrip("[").rstrip("]").strip()) > int(self._Capacity[i]):
|
||||
print "error"
|
||||
print ("error")
|
||||
return self._Capacity
|
||||
@property
|
||||
def DatumType(self):
|
||||
|
@ -156,7 +156,14 @@ def GetDependencyList(FileStack, SearchPathList):
|
||||
continue
|
||||
|
||||
if FileContent[0] == 0xff or FileContent[0] == 0xfe:
|
||||
FileContent = unicode(FileContent, "utf-16")
|
||||
FileContent = FileContent.decode('utf-16')
|
||||
IncludedFileList = gIncludePattern.findall(FileContent)
|
||||
else:
|
||||
try:
|
||||
FileContent = str(FileContent)
|
||||
IncludedFileList = gIncludePattern.findall(FileContent)
|
||||
except:
|
||||
pass
|
||||
IncludedFileList = gIncludePattern.findall(FileContent)
|
||||
|
||||
for Inc in IncludedFileList:
|
||||
@ -1615,7 +1622,7 @@ class DscBuildData(PlatformBuildClassObject):
|
||||
FdfInfList = GlobalData.gFdfParser.Profile.InfList
|
||||
FdfModuleList = [PathClass(NormPath(Inf), GlobalData.gWorkspace, Arch=self._Arch) for Inf in FdfInfList]
|
||||
AllModulePcds = set()
|
||||
ModuleSet = set(self._Modules.keys() + FdfModuleList)
|
||||
ModuleSet = set(list(self._Modules.keys()) + FdfModuleList)
|
||||
for ModuleFile in ModuleSet:
|
||||
ModuleData = self._Bdb[ModuleFile, self._Arch, self._Target, self._Toolchain]
|
||||
AllModulePcds = AllModulePcds | ModuleData.PcdsName
|
||||
@ -1743,7 +1750,7 @@ class DscBuildData(PlatformBuildClassObject):
|
||||
except:
|
||||
EdkLogger.error('Build', COMMAND_FAILURE, 'Can not execute command: %s' % Command)
|
||||
Result = Process.communicate()
|
||||
return Process.returncode, Result[0], Result[1]
|
||||
return Process.returncode, Result[0].decode(encoding='utf-8', errors='ignore'), Result[1].decode(encoding='utf-8', errors='ignore')
|
||||
|
||||
@staticmethod
|
||||
def IntToCString(Value, ValueSize):
|
||||
|
@ -1999,10 +1999,10 @@ class DecParser(MetaFileParser):
|
||||
return
|
||||
|
||||
if self._include_flag:
|
||||
self._ValueList[1] = "<HeaderFiles>_" + md5(self._CurrentLine).hexdigest()
|
||||
self._ValueList[1] = "<HeaderFiles>_" + md5(self._CurrentLine.encode('utf-8')).hexdigest()
|
||||
self._ValueList[2] = self._CurrentLine
|
||||
if self._package_flag and "}" != self._CurrentLine:
|
||||
self._ValueList[1] = "<Packages>_" + md5(self._CurrentLine).hexdigest()
|
||||
self._ValueList[1] = "<Packages>_" + md5(self._CurrentLine.encode('utf-8')).hexdigest()
|
||||
self._ValueList[2] = self._CurrentLine
|
||||
if self._CurrentLine == "}":
|
||||
self._package_flag = False
|
||||
|
Reference in New Issue
Block a user