aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/kconfig/confdata.c
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/kconfig/confdata.c')
-rw-r--r--scripts/kconfig/confdata.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c
index 497a19e85a07..ee5fe943d58d 100644
--- a/scripts/kconfig/confdata.c
+++ b/scripts/kconfig/confdata.c
@@ -312,7 +312,7 @@ load:
312 312
313int conf_read(const char *name) 313int conf_read(const char *name)
314{ 314{
315 struct symbol *sym; 315 struct symbol *sym, *choice_sym;
316 struct property *prop; 316 struct property *prop;
317 struct expr *e; 317 struct expr *e;
318 int i, flags; 318 int i, flags;
@@ -353,9 +353,9 @@ int conf_read(const char *name)
353 */ 353 */
354 prop = sym_get_choice_prop(sym); 354 prop = sym_get_choice_prop(sym);
355 flags = sym->flags; 355 flags = sym->flags;
356 for (e = prop->expr; e; e = e->left.expr) 356 expr_list_for_each_sym(prop->expr, e, choice_sym)
357 if (e->right.sym->visible != no) 357 if (choice_sym->visible != no)
358 flags &= e->right.sym->flags; 358 flags &= choice_sym->flags;
359 sym->flags &= flags | ~SYMBOL_DEF_USER; 359 sym->flags &= flags | ~SYMBOL_DEF_USER;
360 } 360 }
361 361