diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2007-09-04 00:42:41 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2007-09-04 00:42:41 -0700 |
commit | a5229e6b3fb77ef92ff585e17ba4aa8a3e945727 (patch) | |
tree | 384b6213070d36d2b055df01866d8d5f9947baf6 | |
parent | bc5a6deba729a4a44d7b8019408350d4f45b7acb (diff) | |
parent | f82f3f9422d4da1eeec6f6cf3e64c6c34c4fe19b (diff) | |
download | lwn-a5229e6b3fb77ef92ff585e17ba4aa8a3e945727.tar.gz lwn-a5229e6b3fb77ef92ff585e17ba4aa8a3e945727.zip |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fix
-rw-r--r-- | scripts/kconfig/conf.c | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/scripts/kconfig/conf.c b/scripts/kconfig/conf.c index 8be6a4269e63..a38787a881ea 100644 --- a/scripts/kconfig/conf.c +++ b/scripts/kconfig/conf.c @@ -72,7 +72,7 @@ static void check_stdin(void) } } -static void conf_askvalue(struct symbol *sym, const char *def) +static int conf_askvalue(struct symbol *sym, const char *def) { enum symbol_type type = sym_get_type(sym); tristate val; @@ -87,7 +87,7 @@ static void conf_askvalue(struct symbol *sym, const char *def) printf("%s\n", def); line[0] = '\n'; line[1] = 0; - return; + return 0; } switch (input_mode) { @@ -97,23 +97,23 @@ static void conf_askvalue(struct symbol *sym, const char *def) case set_random: if (sym_has_value(sym)) { printf("%s\n", def); - return; + return 0; } break; case ask_new: case ask_silent: if (sym_has_value(sym)) { printf("%s\n", def); - return; + return 0; } check_stdin(); case ask_all: fflush(stdout); fgets(line, 128, stdin); - return; + return 1; case set_default: printf("%s\n", def); - return; + return 1; default: break; } @@ -123,7 +123,7 @@ static void conf_askvalue(struct symbol *sym, const char *def) case S_HEX: case S_STRING: printf("%s\n", def); - return; + return 1; default: ; } @@ -174,6 +174,7 @@ static void conf_askvalue(struct symbol *sym, const char *def) break; } printf("%s", line); + return 1; } int conf_string(struct menu *menu) @@ -187,7 +188,8 @@ int conf_string(struct menu *menu) def = sym_get_string_value(sym); if (sym_get_string_value(sym)) printf("[%s] ", def); - conf_askvalue(sym, def); + if (!conf_askvalue(sym, def)) + return 0; switch (line[0]) { case '\n': break; @@ -240,7 +242,8 @@ static int conf_sym(struct menu *menu) if (menu_has_help(menu)) printf("/?"); printf("] "); - conf_askvalue(sym, sym_get_string_value(sym)); + if (!conf_askvalue(sym, sym_get_string_value(sym))) + return 0; strip(line); switch (line[0]) { |