From 83297dc6c34485d1d28e12f19bfb3764c90fc47b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Mon, 19 May 2008 11:24:46 +0200 Subject: [PATCH] Fix get_parents function on modules graph for issue16 --- trytond/ir/module/module.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/trytond/ir/module/module.py b/trytond/ir/module/module.py index 575b6f2581..ceb82818d7 100644 --- a/trytond/ir/module/module.py +++ b/trytond/ir/module/module.py @@ -227,13 +227,14 @@ class Module(OSV): def get_parents(name, graph): parents = [] for node in graph: - if node.depth == graph[name].depth - 1 \ - and graph[name] in node.childs: - parents.append(node.name) - parents2 = [] + if graph[name] in node.childs: + if node.name not in parents: + parents.append(node.name) for parent in parents: - parents2 += get_parents(parent, graph) - return parents + parents2 + for parent2 in get_parents(parent, graph): + if parent2 not in parents: + parents.append(parent2) + return parents dependencies = get_parents(module.name, graph) module_install_ids = self.search(cursor, user, [ ('name', 'in', dependencies),