1 |
Since commit 496ff326dc18890889d1ea5d2aec590394635960, master |
2 |
repositories have been synced even when not selected. |
3 |
|
4 |
Fixes: 496ff326dc18 ("sync repositories in parallel (bug 557426)") |
5 |
--- |
6 |
pym/portage/emaint/modules/sync/sync.py | 7 +++++-- |
7 |
1 file changed, 5 insertions(+), 2 deletions(-) |
8 |
|
9 |
diff --git a/pym/portage/emaint/modules/sync/sync.py b/pym/portage/emaint/modules/sync/sync.py |
10 |
index 879d0f0..601118f 100644 |
11 |
--- a/pym/portage/emaint/modules/sync/sync.py |
12 |
+++ b/pym/portage/emaint/modules/sync/sync.py |
13 |
@@ -328,12 +328,15 @@ class SyncScheduler(AsyncScheduler): |
14 |
self._leaf_nodes = [] |
15 |
self._repo_map = {} |
16 |
self._running_repos = set() |
17 |
+ selected_repo_names = frozenset(repo.name |
18 |
+ for repo in self._selected_repos) |
19 |
for repo in self._selected_repos: |
20 |
self._repo_map[repo.name] = repo |
21 |
self._sync_graph.add(repo.name, None) |
22 |
for master in repo.masters: |
23 |
- self._repo_map[master.name] = master |
24 |
- self._sync_graph.add(master.name, repo.name) |
25 |
+ if master.name in selected_repo_names: |
26 |
+ self._repo_map[master.name] = master |
27 |
+ self._sync_graph.add(master.name, repo.name) |
28 |
self._update_leaf_nodes() |
29 |
|
30 |
def _task_exit(self, task): |
31 |
-- |
32 |
2.4.6 |