diff options
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/lib/bb/data_smart.py | 13 |
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(" ")) |