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:42 +0000 |
commit | 39846ddbce87d26eb68870914bf86a8ce5e86e5c (patch) | |
tree | e4c6b3583d40e50075df35888a29956f1af52e11 /bitbake/lib/bb/data_smart.py | |
parent | 7ae43dcefa316bccf293233cdbd994f97796ab88 (diff) | |
download | poky-39846ddbce87d26eb68870914bf86a8ce5e86e5c.tar.gz |
bitbake: 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]
(Bitbake rev: 2a80735183e8faa110b4c6d8d85c4707f28e03a1)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/data_smart.py')
-rw-r--r-- | bitbake/lib/bb/data_smart.py | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/bitbake/lib/bb/data_smart.py b/bitbake/lib/bb/data_smart.py index 742c7fb64a..e4bdb2fdd9 100644 --- a/bitbake/lib/bb/data_smart.py +++ b/bitbake/lib/bb/data_smart.py | |||
@@ -614,6 +614,10 @@ class DataSmart(MutableMapping): | |||
614 | filtered = filter(lambda v: v not in local_var["_removeactive"], | 614 | filtered = filter(lambda v: v not in local_var["_removeactive"], |
615 | value.split(" ")) | 615 | value.split(" ")) |
616 | value = " ".join(filtered) | 616 | value = " ".join(filtered) |
617 | if expand: | ||
618 | # We need to ensure the expand cache has the correct value | ||
619 | # flag == "_content" here | ||
620 | self.expand_cache[var].value = value | ||
617 | return value | 621 | return value |
618 | 622 | ||
619 | def delVarFlag(self, var, flag, **loginfo): | 623 | def delVarFlag(self, var, flag, **loginfo): |