X-Git-Url: https://jxself.org/git/?p=carl9170fw.git;a=blobdiff_plain;f=config%2Fconfdata.c;h=24b7e4657b8de90e42d63c36a84ef6d1c790bdea;hp=da208c47fcb844e3101382fdf38dcc9f773d24b8;hb=fcd2962f05220e69124436a67cb9f93b46b6cf14;hpb=42306a155d227ba90624c190a28344d61d566f46 diff --git a/config/confdata.c b/config/confdata.c index da208c4..24b7e46 100644 --- a/config/confdata.c +++ b/config/confdata.c @@ -226,7 +226,7 @@ const char *conf_get_configname(void) return name ? name : ".config"; } -const char *conf_get_autoconfig_name(void) +static const char *conf_get_autoconfig_name(void) { char *name = getenv("KCONFIG_AUTOCONFIG"); @@ -241,7 +241,7 @@ char *conf_get_default_confname(void) name = expand_string(conf_defname); env = getenv(SRCTREE); if (env) { - sprintf(fullname, "%s/%s", env, name); + snprintf(fullname, sizeof(fullname), "%s/%s", env, name); if (is_present(fullname)) return fullname; } @@ -927,6 +927,9 @@ int conf_write(const char *name) return -1; } + if (make_parent_dir(name)) + return -1; + env = getenv("KCONFIG_OVERWRITECONFIG"); if (env && *env) { *tmpname = 0; @@ -1007,8 +1010,6 @@ static int conf_write_dep(const char *name) struct file *file; FILE *out; - if (!name) - name = ".kconfig.d"; out = fopen("..config.tmp", "w"); if (!out) return 1;