From: Rob Landley Date: Mon, 5 Sep 2005 11:04:30 +0000 (-0000) Subject: The previous commit left confdata writing out: X-Git-Tag: 1_1_0~780 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=8f991043625a1933f5086a933d92bac28316869a;p=oweals%2Fbusybox.git The previous commit left confdata writing out: CONFIG_NUMERIC_CONSTANT= And on reading it back in, it would complain that '' was an invalid value for that field. I.E. "make allnoconfig && make" worked fine, but "make allnoconfig && make menuconfig" barfed reading in the config file. So now I have it write out "0" as the blank value. (It's initialized to the default value when the menu becomes visible anyway; I checked.) That seems to work. --- diff --git a/scripts/config/confdata.c b/scripts/config/confdata.c index 1d1b61e2b..78f3b20a7 100644 --- a/scripts/config/confdata.c +++ b/scripts/config/confdata.c @@ -396,21 +396,20 @@ int conf_write(const char *name) case S_HEX: str = sym_get_string_value(sym); if (str[0] != '0' || (str[1] != 'x' && str[1] != 'X')) { - fprintf(out, "%s=%s\n", sym->name, str); + fprintf(out, "%s=%s\n", sym->name, *str ? str : "0"); if (out_h) fprintf(out_h, "#define %s 0x%s\n", sym->name, str); break; } case S_INT: str = sym_get_string_value(sym); - fprintf(out, "%s=%s\n", sym->name, str); + fprintf(out, "%s=%s\n", sym->name, *str ? str : "0"); if (out_h) fprintf(out_h, "#define %s %s\n", sym->name, str); break; } } - next: if (menu->list) { menu = menu->list; continue;