summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/data_smart.py
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/bb/data_smart.py')
-rw-r--r--bitbake/lib/bb/data_smart.py13
1 files changed, 6 insertions, 7 deletions
diff --git a/bitbake/lib/bb/data_smart.py b/bitbake/lib/bb/data_smart.py
index d32501821d..20e33a4870 100644
--- a/bitbake/lib/bb/data_smart.py
+++ b/bitbake/lib/bb/data_smart.py
@@ -505,12 +505,7 @@ class DataSmart(MutableMapping):
505 self._seen_overrides[override].add( var ) 505 self._seen_overrides[override].add( var )
506 506
507 def getVar(self, var, expand=False, noweakdefault=False): 507 def getVar(self, var, expand=False, noweakdefault=False):
508 value = self.getVarFlag(var, "_content", False, noweakdefault) 508 return self.getVarFlag(var, "_content", expand, noweakdefault)
509
510 # Call expand() separately to make use of the expand cache
511 if expand and value:
512 return self.expand(value, var)
513 return value
514 509
515 def renameVar(self, key, newkey, **loginfo): 510 def renameVar(self, key, newkey, **loginfo):
516 """ 511 """
@@ -587,7 +582,11 @@ class DataSmart(MutableMapping):
587 elif flag == "_content" and "defaultval" in local_var and not noweakdefault: 582 elif flag == "_content" and "defaultval" in local_var and not noweakdefault:
588 value = copy.copy(local_var["defaultval"]) 583 value = copy.copy(local_var["defaultval"])
589 if expand and value: 584 if expand and value:
590 value = self.expand(value, None) 585 # Only getvar (flag == _content) hits the expand cache
586 cachename = None
587 if flag == "_content":
588 cachename = var
589 value = self.expand(value, cachename)
591 if value and flag == "_content" and local_var and "_removeactive" in local_var: 590 if value and flag == "_content" and local_var and "_removeactive" in local_var:
592 filtered = filter(lambda v: v not in local_var["_removeactive"], 591 filtered = filter(lambda v: v not in local_var["_removeactive"],
593 value.split(" ")) 592 value.split(" "))