From 544533922d73c9bbf2aaa537b4cb482a2b89e291 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Tue, 23 Dec 2014 12:32:06 +0000 Subject: bitbake: data_smart: Ensure d.keys() doesn't list deleted variables If you copy the datastore, then delete a variable, it still shows up in d.keys() when it should not. This patch addresses the issue. (Bitbake rev: f28ee1bb03cb32d3757fbef67c9fbe143e3dadfa) Signed-off-by: Richard Purdie --- bitbake/lib/bb/data_smart.py | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'bitbake/lib/bb/data_smart.py') diff --git a/bitbake/lib/bb/data_smart.py b/bitbake/lib/bb/data_smart.py index 31ce9a5d15..68d273b3a6 100644 --- a/bitbake/lib/bb/data_smart.py +++ b/bitbake/lib/bb/data_smart.py @@ -740,12 +740,16 @@ class DataSmart(MutableMapping): yield key def __iter__(self): + deleted = set() def keylist(d): klist = set() for key in d: if key == "_data": continue + if key in deleted: + continue if not d[key]: + deleted.add(key) continue klist.add(key) -- cgit v1.2.3-54-g00ecf