summaryrefslogtreecommitdiffstats
path: root/lib/bb/data_smart.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2015-07-21 12:17:07 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-07-21 23:37:05 +0100
commit83e2923cd3c8f2e25987132f85b06ce72bc941d7 (patch)
treed219744285cab437c3834113a2831e0e07109a4d /lib/bb/data_smart.py
parent61307693a25a4a2eeeab5c450df330229638ddad (diff)
downloadopenembedded-core-contrib-83e2923cd3c8f2e25987132f85b06ce72bc941d7.tar.gz
data_smart: Use deepcopy for overridedata
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@linuxfoundation.org>
Diffstat (limited to 'lib/bb/data_smart.py')
-rw-r--r--lib/bb/data_smart.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/bb/data_smart.py b/lib/bb/data_smart.py
index 7755f1afd8..e69f8d72df 100644
--- a/lib/bb/data_smart.py
+++ b/lib/bb/data_smart.py
@@ -780,7 +780,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