summaryrefslogtreecommitdiff
path: root/BaseTools
diff options
context:
space:
mode:
authorCarsey, Jaben <jaben.carsey@intel.com>2018-04-28 06:32:28 +0800
committerYonghong Zhu <yonghong.zhu@intel.com>2018-05-04 13:03:03 +0800
commit13d9e0511e1c247b324c2ec6d3b4806c8a4daaa2 (patch)
treeee69787eb796c17ccb0dddc0c130630918fa4b70 /BaseTools
parent3b743b3b158bfaed6bd539086861c1307678163a (diff)
downloadedk2-13d9e0511e1c247b324c2ec6d3b4806c8a4daaa2.zip
edk2-13d9e0511e1c247b324c2ec6d3b4806c8a4daaa2.tar.gz
edk2-13d9e0511e1c247b324c2ec6d3b4806c8a4daaa2.tar.bz2
BaseTools: refactor to use list not dict
since we never access the values in the copied dict, just use a list instead. Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com>
Diffstat (limited to 'BaseTools')
-rw-r--r--BaseTools/Source/Python/Common/ToolDefClassObject.py5
-rw-r--r--BaseTools/Source/Python/GenFds/GenFds.py2
2 files changed, 4 insertions, 3 deletions
diff --git a/BaseTools/Source/Python/Common/ToolDefClassObject.py b/BaseTools/Source/Python/Common/ToolDefClassObject.py
index 73ebdaf..8335958 100644
--- a/BaseTools/Source/Python/Common/ToolDefClassObject.py
+++ b/BaseTools/Source/Python/Common/ToolDefClassObject.py
@@ -92,7 +92,9 @@ class ToolDefClassObject(object):
KeyList = [TAB_TOD_DEFINES_TARGET, TAB_TOD_DEFINES_TOOL_CHAIN_TAG, TAB_TOD_DEFINES_TARGET_ARCH, TAB_TOD_DEFINES_COMMAND_TYPE]
for Index in range(3, -1, -1):
- for Key in dict(self.ToolsDefTxtDictionary):
+ # make a copy of the keys to enumerate over to prevent issues when
+ # adding/removing items from the original dict.
+ for Key in list(self.ToolsDefTxtDictionary.keys()):
List = Key.split('_')
if List[Index] == '*':
for String in self.ToolsDefTxtDatabase[KeyList[Index]]:
@@ -100,7 +102,6 @@ class ToolDefClassObject(object):
NewKey = '%s_%s_%s_%s_%s' % tuple(List)
if NewKey not in self.ToolsDefTxtDictionary:
self.ToolsDefTxtDictionary[NewKey] = self.ToolsDefTxtDictionary[Key]
- continue
del self.ToolsDefTxtDictionary[Key]
elif List[Index] not in self.ToolsDefTxtDatabase[KeyList[Index]]:
del self.ToolsDefTxtDictionary[Key]
diff --git a/BaseTools/Source/Python/GenFds/GenFds.py b/BaseTools/Source/Python/GenFds/GenFds.py
index ccd1379..e17affc 100644
--- a/BaseTools/Source/Python/GenFds/GenFds.py
+++ b/BaseTools/Source/Python/GenFds/GenFds.py
@@ -428,7 +428,7 @@ def FindExtendTool(KeyStringList, CurrentArchList, NameGuid):
if BuildOption:
ToolList = [TAB_TOD_DEFINES_TARGET, TAB_TOD_DEFINES_TOOL_CHAIN_TAG, TAB_TOD_DEFINES_TARGET_ARCH]
for Index in range(2, -1, -1):
- for Key in dict(BuildOption):
+ for Key in list(BuildOption.keys()):
List = Key.split('_')
if List[Index] == '*':
for String in ToolDb[ToolList[Index]]: