summaryrefslogtreecommitdiffstats
path: root/BaseTools/Source/Python/Workspace
diff options
context:
space:
mode:
authorFeng, Bob C <bob.c.feng@intel.com>2019-02-20 23:21:31 +0800
committerFeng, Bob C <bob.c.feng@intel.com>2019-02-22 15:47:14 +0800
commitf747640bf333801062b3b8837e7cfcda75ad6215 (patch)
treed1ea915b49b48021fb2af1ef83c51dfeb231a163 /BaseTools/Source/Python/Workspace
parent4247c24fba94283e74c97103e0b9b67da9b4ea5b (diff)
downloadedk2-f747640bf333801062b3b8837e7cfcda75ad6215.tar.gz
edk2-f747640bf333801062b3b8837e7cfcda75ad6215.tar.bz2
edk2-f747640bf333801062b3b8837e7cfcda75ad6215.zip
BaseTool: Fixed incremental rebuild issue.
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1540 This issue in introduced by commit d943b0c339fe3d35ffdf9f580ccb7a55915c6854 To convert bytes to string, we need to use bytes.decode() instead of using str(bytes). If the source file is not a txt file, ignore that file. 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/Workspace')
-rw-r--r--BaseTools/Source/Python/Workspace/DscBuildData.py17
1 files changed, 8 insertions, 9 deletions
diff --git a/BaseTools/Source/Python/Workspace/DscBuildData.py b/BaseTools/Source/Python/Workspace/DscBuildData.py
index 1ffefe6e7e..7221946062 100644
--- a/BaseTools/Source/Python/Workspace/DscBuildData.py
+++ b/BaseTools/Source/Python/Workspace/DscBuildData.py
@@ -155,15 +155,14 @@ def GetDependencyList(FileStack, SearchPathList):
if len(FileContent) == 0:
continue
- if FileContent[0] == 0xff or FileContent[0] == 0xfe:
- FileContent = FileContent.decode('utf-16')
- IncludedFileList = gIncludePattern.findall(FileContent)
- else:
- try:
- FileContent = str(FileContent)
- IncludedFileList = gIncludePattern.findall(FileContent)
- except:
- pass
+ try:
+ if FileContent[0] == 0xff or FileContent[0] == 0xfe:
+ FileContent = FileContent.decode('utf-16')
+ else:
+ FileContent = FileContent.decode()
+ except:
+ # The file is not txt file. for example .mcb file
+ continue
IncludedFileList = gIncludePattern.findall(FileContent)
for Inc in IncludedFileList: