diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-03-25 22:23:09 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-03-25 22:28:13 +0000 |
commit | 2a80735183e8faa110b4c6d8d85c4707f28e03a1 (patch) | |
tree | 4bfac61b2aa770d04b4d0b521d2973a000ea994b /lib/bb/data_smart.py | |
parent | 93291bd90e18808c7a1c8c692949396bbc7e4348 (diff) | |
download | bitbake-contrib-2a80735183e8faa110b4c6d8d85c4707f28e03a1.tar.gz |
data_smart: Fix caching issue for double remove references
FOO = "foo bar"
FOO_remove = "bar"
FOO_FOO = "${FOO} ${FOO}"
would show FOO_FOO = "foo foo bar" rather than the expected "foo foo".
This is actually a cache bug, this patch ensures the right value is
put into the cache. The preceeding patch adds a test case to ensure
we don't regress in future.
[YOCTO #6037]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb/data_smart.py')
-rw-r--r-- | lib/bb/data_smart.py | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/bb/data_smart.py b/lib/bb/data_smart.py index 742c7fb64..e4bdb2fdd 100644 --- a/lib/bb/data_smart.py +++ b/lib/bb/data_smart.py @@ -614,6 +614,10 @@ class DataSmart(MutableMapping): filtered = filter(lambda v: v not in local_var["_removeactive"], value.split(" ")) value = " ".join(filtered) + if expand: + # We need to ensure the expand cache has the correct value + # flag == "_content" here + self.expand_cache[var].value = value return value def delVarFlag(self, var, flag, **loginfo): |