summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/portage/cache/util.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/pym/portage/cache/util.py b/pym/portage/cache/util.py
index f256be76f..253ada009 100644
--- a/pym/portage/cache/util.py
+++ b/pym/portage/cache/util.py
@@ -39,12 +39,16 @@ 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_"]) and \
- set(trg["_eclasses_"]) == set(entry["_eclasses_"]):
- write_it = False
- except (cache_errors.CacheError, KeyError):
+ except KeyError:
pass
+ else:
+ try:
+ 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:
+ pass
if trg and not write_it:
""" We don't want to skip the write unless we're really sure that