summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2006-04-15 22:57:52 +0000
committerHolger Hans Peter Freyther <zecke@selfish.org>2006-04-15 22:57:52 +0000
commit17ecb65b392e98860661502015759782b55028a7 (patch)
tree90c6349528b5afb429f8a15d1d5239feb6a883f0
parentb03a424879367fd4118f60abda7f78bc5f27b957 (diff)
downloadbitbake-17ecb65b392e98860661502015759782b55028a7.tar.gz
lib/bb/data_smart.py:
For now we are forced to deepcopy these two dictonaries. This is a first aid band aid to have something working. We will kill the DataSmartPackage class completely
-rw-r--r--lib/bb/data_smart.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/bb/data_smart.py b/lib/bb/data_smart.py
index 4d426f428..ca1e3a246 100644
--- a/lib/bb/data_smart.py
+++ b/lib/bb/data_smart.py
@@ -236,8 +236,8 @@ class DataSmart:
# we really want this to be a DataSmart...
data = DataSmart()
data.dict["_data"] = self.dict
- data._seen_overrides = copy.copy(self._seen_overrides)
- data._special_values = copy.copy(self._special_values)
+ data._seen_overrides = copy.deepcopy(self._seen_overrides)
+ data._special_values = copy.deepcopy(self._special_values)
return data
@@ -291,6 +291,11 @@ class DataSmartPackage(DataSmart):
self.bbfile = os.path.abspath( name )
self.parent = parent
- # Do Copy on Write
+
+
+ # XXX Kill this class, kill this deepcopy by COW
+ self._seen_overrides = copy.deepcopy(parent._seen_overrides)
+ self._special_values = copy.deepcopy(parent._special_values)
+
self.linkDataSet()