1
0
mirror of https://github.com/irssi/irssi.git synced 2024-06-30 06:45:25 +00:00

fix crash when accessing settings during shutdown

This commit is contained in:
Ailin Nemui 2022-02-05 22:31:42 +01:00
parent 53187de6a2
commit 5f29b35fbe
2 changed files with 5 additions and 1 deletions

View File

@ -928,6 +928,7 @@ void settings_deinit(void)
g_hash_table_foreach(settings, (GHFunc) settings_hash_free, NULL);
g_hash_table_destroy(settings);
settings = NULL;
if (mainconfig != NULL) config_close(mainconfig);
}

View File

@ -57,6 +57,7 @@ static int autocon_port;
static int no_autoconnect;
static char *cmdline_nick;
static char *cmdline_hostname;
GLogFunc logger_old;
void fe_core_log_init(void);
void fe_core_log_deinit(void);
@ -253,6 +254,8 @@ void fe_common_core_deinit(void)
signal_remove("server destroyed", (SIGNAL_FUNC) sig_destroyed);
signal_remove("channel created", (SIGNAL_FUNC) sig_channel_created);
signal_remove("channel destroyed", (SIGNAL_FUNC) sig_channel_destroyed);
g_log_set_default_handler(logger_old, NULL);
}
static gboolean glib_domain_wanted(const char *domain)
@ -521,7 +524,7 @@ void fe_common_core_finish_init(void)
signal_add_first("setup changed", (SIGNAL_FUNC) sig_setup_changed);
/* _after_ windows are created.. */
g_log_set_default_handler((GLogFunc) i_log_func, NULL);
logger_old = g_log_set_default_handler((GLogFunc) i_log_func, NULL);
if (setup_changed)
signal_emit("setup changed", 0);