summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2017-11-01 15:36:31 +0100
committerMichał Górny <mgorny@gentoo.org>2017-11-01 15:36:31 +0100
commitd0733ecf55f76c4700eb116439c4fd635936f956 (patch)
tree5905ac4ab114a1cca74db6f80b4eac9f67230a67
parent0252027eacfa7c8ebb87160e963dfcae6ede92e8 (diff)
downloadgemato-d0733ecf55f76c4700eb116439c4fd635936f956.tar.gz
recursiveloader: Optimize duplicate Manifest updates out
-rw-r--r--gemato/recursiveloader.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/gemato/recursiveloader.py b/gemato/recursiveloader.py
index fd926c5..65dd424 100644
--- a/gemato/recursiveloader.py
+++ b/gemato/recursiveloader.py
@@ -859,6 +859,11 @@ class ManifestRecursiveLoader(object):
if fe.tag == 'MANIFEST':
manifest_stack.append((fpath, relpath,
self.loaded_manifests[fpath]))
+ # do not update the Manifest entry if
+ # the relevant Manifest is going to be updated
+ # anyway
+ if relpath in self.updated_manifests:
+ continue
else:
# skip top-level Manifest, we obviously can't have
# an entry for it