summaryrefslogtreecommitdiffstats
path: root/bitbake/lib
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2011-06-17 17:34:52 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-06-28 15:27:41 +0100
commit1b5d7b59d330b49a25fe60aea22c2f3b59bfb5e1 (patch)
tree9062739127a1bed604b299037f35cf482d222d65 /bitbake/lib
parent5c5b0045e8abf4f8e8d7e7e5977672bc3341882e (diff)
downloadast2050-yocto-poky-1b5d7b59d330b49a25fe60aea22c2f3b59bfb5e1.zip
ast2050-yocto-poky-1b5d7b59d330b49a25fe60aea22c2f3b59bfb5e1.tar.gz
bitbake/data_smart: Don't track overrides in deleted variable names
When we delete a variable we no longer expect it to override other variables. To do this we remove it from the list of active overrides at deletion time. It turns out we already had to do this at override expansion time so this cleans up the code to be more consistent as an added bonus. (Bitbake rev: d924ff9ede57c3dea6e1c738ba3633f18d460b14) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib')
-rw-r--r--bitbake/lib/bb/data_smart.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/bitbake/lib/bb/data_smart.py b/bitbake/lib/bb/data_smart.py
index bc359de..8f67227 100644
--- a/bitbake/lib/bb/data_smart.py
+++ b/bitbake/lib/bb/data_smart.py
@@ -178,7 +178,6 @@ class DataSmart(MutableMapping):
try:
self.setVar(name, self.getVar(var, False))
self.delVar(var)
- self._seen_overrides[o].remove(var)
except Exception:
logger.info("Untracked delVar")
@@ -301,6 +300,10 @@ class DataSmart(MutableMapping):
def delVar(self, var):
self.expand_cache = {}
self.dict[var] = {}
+ if '_' in var:
+ override = var[var.rfind('_')+1:]
+ if override and override in self._seen_overrides and var in self._seen_overrides[override]:
+ self._seen_overrides[override].remove(var)
def setVarFlag(self, var, flag, flagvalue):
if not var in self.dict:
OpenPOWER on IntegriCloud