projects.py: Fix recursion

Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
Jan Lindemann 2016-01-26 15:20:48 +00:00
commit 69bcd617b2

View file

@ -68,22 +68,23 @@ def get_value(name, section, key):
def add_modules_from_project_txt(buf, name, section, key, add_self, recursive,
names_only):
#if name in buf:
# return
if name in buf:
return
if recursive:
deps = get_value(name, section, key)
if deps:
deps = deps.split(',')
for dep in deps:
mod = strip_module_from_spec(dep)
add_modules_from_project_txt(buf, mod,
section, key, add_self=True, recursive=True,
names_only=names_only)
if names_only:
buf.add(mod)
else:
buf.add(dep)
if add_self:
buf.add(name)
deps = get_value(name, section, key)
if not deps:
return
deps = deps.split(',')
for dep in deps:
if names_only:
buf.add(strip_module_from_spec(dep))
else:
buf.add(dep)
if recursive:
add_modules_from_project_txt(buf, strip_module_from_spec(dep),
section, key, True, recursive, names_only)
def get_modules_from_project_txt(names, section, key, add_self, recursive,
names_only = True):