diff options
author | Lars Wirzenius <liw@liw.fi> | 2016-06-12 18:40:53 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2016-06-12 18:40:53 +0300 |
commit | 7a5fbe67358fb0c9b2e846e0c0d11404f9adfc82 (patch) | |
tree | 16105c9bd9e593505bc30bb769f19a99061d31cb | |
parent | 2de24b0dfa1b5fe12fd9865a6b19f220d5bb4d75 (diff) | |
download | obnam-7a5fbe67358fb0c9b2e846e0c0d11404f9adfc82.tar.gz |
Revert "Optimise?"
This reverts commit 2de24b0dfa1b5fe12fd9865a6b19f220d5bb4d75.
-rw-r--r-- | meliaereader/reader.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/meliaereader/reader.py b/meliaereader/reader.py index 03923efe..de97b545 100644 --- a/meliaereader/reader.py +++ b/meliaereader/reader.py @@ -80,20 +80,21 @@ class MeliaeReader(object): 'computing closures for {} objs\n'.format(len(growing_refs))) growing2 = set() for ref in growing_refs: - growing2.update(self.add_to_closure(ref, all_refs)) + growing2.update(self.add_to_closure(ref)) growing_refs = growing2 assert set(self._objs.keys()) == set(self._closures.keys()) - def add_to_closure(self, ref, all_refs): + def add_to_closure(self, ref): grown = set() closure = self._closures[ref] children = [self.get_object(r) for r in closure] for child in children: delta = set(child['refs']).difference(closure) - delta = delta.intersection(all_refs) if delta: - closure.update(delta) + for r in delta: + if r in self: + closure.add(r) grown.add(child['address']) return grown |