diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-04-11 14:01:50 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-04-12 15:09:58 +0100 |
commit | 000b7d3d1c6ca934e5e988f8c6682a996c82b587 (patch) | |
tree | c7b4327b4ddb45848224dd8265d7b6ffbce42e01 /bitbake/lib/bb/data_smart.py | |
parent | 64a379b3255929864164eb2a7fe792faf07c06ad (diff) | |
download | poky-000b7d3d1c6ca934e5e988f8c6682a996c82b587.tar.gz |
bitbake: data_smart: Ensure _remove operations on newly set variables are cleared
We clear append/prepend on newly set variables, we should also clear
remove operations. If we don't do this, there is no way we can actually
delete a remove operation. Bitbake internally uses parsing=True to avoid
these side effects when making its own internal calls.
Also add a testcase to bitbake-selftest to ensure we remain consistent going
forward from here.
(Bitbake rev: 3a319f079d699c870d8531e051ab65e6278d1fa5)
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 | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/bitbake/lib/bb/data_smart.py b/bitbake/lib/bb/data_smart.py index d6dd698eff..7dc1c68709 100644 --- a/bitbake/lib/bb/data_smart.py +++ b/bitbake/lib/bb/data_smart.py | |||
@@ -546,6 +546,8 @@ class DataSmart(MutableMapping): | |||
546 | del self.dict[var]["_append"] | 546 | del self.dict[var]["_append"] |
547 | if "_prepend" in self.dict[var]: | 547 | if "_prepend" in self.dict[var]: |
548 | del self.dict[var]["_prepend"] | 548 | del self.dict[var]["_prepend"] |
549 | if "_remove" in self.dict[var]: | ||
550 | del self.dict[var]["_remove"] | ||
549 | if var in self.overridedata: | 551 | if var in self.overridedata: |
550 | active = [] | 552 | active = [] |
551 | self.need_overrides() | 553 | self.need_overrides() |