diff options
author | Eric Andersen <andersen@codepoet.org> | 2002-11-09 20:58:05 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2002-11-09 20:58:05 +0000 |
commit | b0ca0c39870912f7784a22df8f9e16f07fd3895d (patch) | |
tree | d26b7339056b588a26af094b145b4c20c1fe4e82 /extra/config/confdata.c | |
parent | c159d8fb27d14f3e1fa8d743a30c652a6158eff2 (diff) |
Update from upstream
Diffstat (limited to 'extra/config/confdata.c')
-rw-r--r-- | extra/config/confdata.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/extra/config/confdata.c b/extra/config/confdata.c index 9e413b4a3..cb8a0e75d 100644 --- a/extra/config/confdata.c +++ b/extra/config/confdata.c @@ -7,7 +7,6 @@ */ #include <ctype.h> -#include <limits.h> #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -17,7 +16,6 @@ #include "lkc.h" const char conf_def_filename[] = ".config"; -char conf_filename[PATH_MAX+1]; const char conf_defname[] = "extra/Configs/Config.$TARGET_ARCH.default"; @@ -71,8 +69,6 @@ int conf_read(const char *name) if (name) { in = fopen(name, "r"); - if (in) - strcpy(conf_filename, name); } else { const char **names = conf_confnames; while ((name = *names++)) { @@ -91,16 +87,17 @@ int conf_read(const char *name) return 1; for_all_symbols(i, sym) { - sym->flags |= SYMBOL_NEW; + sym->flags |= SYMBOL_NEW | SYMBOL_CHANGED; + sym->flags &= ~SYMBOL_VALID; switch (sym->type) { case S_INT: case S_HEX: case S_STRING: - if (S_VAL(sym->def)) { + if (S_VAL(sym->def)) free(S_VAL(sym->def)); - S_VAL(sym->def) = NULL; - } default: + S_VAL(sym->def) = NULL; + S_TRI(sym->def) = no; ; } } @@ -372,7 +369,6 @@ int conf_write(const char *name) rename(name, oldname); if (rename(".tmpconfig", name)) return 1; - strcpy(conf_filename, name); sym_change_count = 0; |