diff options
| author | Ulf Magnusson <ulfalizer@gmail.com> | 2017-09-19 08:03:16 +0200 |
|---|---|---|
| committer | Ulf Magnusson <ulfalizer@gmail.com> | 2017-09-19 08:05:16 +0200 |
| commit | 07fad1d303841647f64586062bbcf972d1f3a10f (patch) | |
| tree | 42fbdd4bc37097498ed0b151b3b8df455b658b86 | |
| parent | 4fce6c53e1bdac803c77f0be8bedece22d73c30c (diff) | |
Simplify dependency propagation for prompts
Old version was a bit roundabout.
| -rw-r--r-- | kconfiglib.py | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/kconfiglib.py b/kconfiglib.py index b408900..773c614 100644 --- a/kconfiglib.py +++ b/kconfiglib.py @@ -1060,16 +1060,15 @@ class Config(object): # Propagate dependencies to prompts if new_prompt is not None: - # Propagate 'visible if' dependencies from enclosing menus prompt, cond_expr = new_prompt - cond_expr = _make_and(cond_expr, visible_if_deps) - # Propagate 'depends on' dependencies - new_prompt = (prompt, _make_and(cond_expr, depends_on_expr)) + # Propagate 'visible if' dependencies from menus and local + # 'depends on' dependencies + cond_expr = _make_and(_make_and(cond_expr, visible_if_deps), + depends_on_expr) # Save original - stmt.orig_prompts.append(new_prompt) + stmt.orig_prompts.append((prompt, cond_expr)) # Finalize with dependencies from enclosing menus and ifs - stmt.prompts.append((new_prompt[0], - _make_and(new_prompt[1], deps))) + stmt.prompts.append((prompt, _make_and(cond_expr, deps))) # Propagate dependencies to defaults |
