From 1d2947b922b8566589f33683b020a5a6b9fba31f Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sat, 3 Feb 2007 12:05:01 +0000 Subject: In order to correctly handl the case of target caches that don't have complete eclass entries, validate the set of interited eclasses to make sure it is correct (since timestamp validation is not applicable). (trunk r5880) svn path=/main/branches/2.1.2/; revision=5881 --- pym/cache/util.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'pym/cache/util.py') diff --git a/pym/cache/util.py b/pym/cache/util.py index 6393deef5..ac09c132c 100644 --- a/pym/cache/util.py +++ b/pym/cache/util.py @@ -39,7 +39,9 @@ def mirror_cache(valid_nodes_iterable, src_cache, trg_cache, eclass_cache=None, trg = None try: trg = trg_cache[x] - if long(trg["_mtime_"]) == long(entry["_mtime_"]) and eclass_cache.is_eclass_data_valid(trg["_eclasses_"]): + if long(trg["_mtime_"]) == long(entry["_mtime_"]) and \ + eclass_cache.is_eclass_data_valid(trg["_eclasses_"]) and \ + set(trg["_eclasses_"]) == set(entry["_eclasses_"]): write_it = False except (cache_errors.CacheError, KeyError): pass -- cgit v1.2.3-1-g7c22