diff options
Diffstat (limited to 'scripts/kconfig/confdata.c')
-rw-r--r-- | scripts/kconfig/confdata.c | 8 |
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 | ||
313 | int conf_read(const char *name) | 313 | int 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 | ||