diff --git a/src/core/settings.c b/src/core/settings.c index 9f7b21a3..bbc85b97 100644 --- a/src/core/settings.c +++ b/src/core/settings.c @@ -556,9 +556,9 @@ int settings_reread(const char *fname) CONFIG_REC *tempconfig; char *str; - str = convert_home(fname); + str = fname == NULL ? NULL : convert_home(fname); tempconfig = parse_configfile(str); - g_free(str); + g_free_not_null(str); if (tempconfig == NULL) { signal_emit("gui dialog", 2, "error", g_strerror(errno)); diff --git a/src/fe-common/core/fe-settings.c b/src/fe-common/core/fe-settings.c index f44138fb..c359c148 100644 --- a/src/fe-common/core/fe-settings.c +++ b/src/fe-common/core/fe-settings.c @@ -245,14 +245,14 @@ static void cmd_unalias(const char *data) /* SYNTAX: RELOAD [] */ static void cmd_reload(const char *data) { - char *fname; + const char *fname; + + fname = *data == '\0' ? get_irssi_config() : data; - fname = *data == '\0' ? NULL : g_strdup(data); if (settings_reread(fname)) { printformat(NULL, NULL, MSGLEVEL_CLIENTNOTICE, TXT_CONFIG_RELOADED, fname); } - g_free_not_null(fname); } static void settings_save_fe(const char *fname)