mirror of
https://github.com/adulau/aha.git
synced 2024-12-27 19:26:25 +00:00
kconfig: improve config load/save output
During loading special case the first common case (.config), be silent about it and otherwise mark it as a change that requires saving. Instead output that the file has been changed. IOW if conf does nothing (special), it's silent. Signed-off-by: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
This commit is contained in:
parent
909252d279
commit
ddc97cacb3
1 changed files with 18 additions and 4 deletions
|
@ -98,20 +98,28 @@ int conf_read_simple(const char *name)
|
|||
in = zconf_fopen(name);
|
||||
} else {
|
||||
const char **names = conf_confnames;
|
||||
name = *names++;
|
||||
if (!name)
|
||||
return 1;
|
||||
in = zconf_fopen(name);
|
||||
if (in)
|
||||
goto load;
|
||||
sym_change_count++;
|
||||
while ((name = *names++)) {
|
||||
name = conf_expand_value(name);
|
||||
in = zconf_fopen(name);
|
||||
if (in) {
|
||||
printf(_("#\n"
|
||||
"# using defaults found in %s\n"
|
||||
"#\n"), name);
|
||||
break;
|
||||
"# using defaults found in %s\n"
|
||||
"#\n"), name);
|
||||
goto load;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!in)
|
||||
return 1;
|
||||
|
||||
load:
|
||||
conf_filename = name;
|
||||
conf_lineno = 0;
|
||||
conf_warnings = 0;
|
||||
|
@ -275,6 +283,8 @@ int conf_read(const char *name)
|
|||
struct expr *e;
|
||||
int i;
|
||||
|
||||
sym_change_count = 0;
|
||||
|
||||
if (conf_read_simple(name))
|
||||
return 1;
|
||||
|
||||
|
@ -325,7 +335,7 @@ int conf_read(const char *name)
|
|||
sym->flags |= e->right.sym->flags & SYMBOL_NEW;
|
||||
}
|
||||
|
||||
sym_change_count = conf_warnings || conf_unsaved;
|
||||
sym_change_count += conf_warnings || conf_unsaved;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -524,6 +534,10 @@ int conf_write(const char *name)
|
|||
if (rename(newname, tmpname))
|
||||
return 1;
|
||||
|
||||
printf(_("#\n"
|
||||
"# configuration written to %s\n"
|
||||
"#\n"), tmpname);
|
||||
|
||||
sym_change_count = 0;
|
||||
|
||||
return 0;
|
||||
|
|
Loading…
Reference in a new issue