[bitbake-devel] [PATCH] data_smart: Use deepcopy for overridedata

Richard Purdie richard.purdie at linuxfoundation.org
Tue Jul 21 11:17:07 UTC 2015


dbus sets RDEPENDS_dbus-ptest_class-target = "X". nativesdk as
BBCLASSEXTEND was expanding and setting various RDEPENDS variables
which were clearing overrides queued against RDEPENDS. The problem
was that this was leaking into other data contexts such as the
target case. This was because overridedata was a shallow copy.

Replacing the shallow copy with a deep copy avoids this problem of
leakage between the data stores at a small performance penalty.

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

diff --git a/bitbake/lib/bb/data_smart.py b/bitbake/lib/bb/data_smart.py
index dcf082d..86cdeb5 100644
--- a/bitbake/lib/bb/data_smart.py
+++ b/bitbake/lib/bb/data_smart.py
@@ -806,7 +806,7 @@ class DataSmart(MutableMapping):
 
         data.overrides = None
         data.overridevars = copy.copy(self.overridevars)
-        data.overridedata = copy.copy(self.overridedata)
+        data.overridedata = copy.deepcopy(self.overridedata)
 
         return data
 





More information about the bitbake-devel mailing list