mirror of
https://github.com/irssi/irssi.git
synced 2026-08-10 04:13:32 +02:00
Merge pull request #803 from ailin-nemui/bug-796-test
Postpone server cleanup until after unref
This commit is contained in:
commit
7d99ff05cd
5 changed files with 38 additions and 27 deletions
|
|
@ -425,7 +425,7 @@ static void isupport_destroy_hash(void *key, void *value)
|
|||
g_free(value);
|
||||
}
|
||||
|
||||
static void sig_disconnected(IRC_SERVER_REC *server)
|
||||
static void sig_destroyed(IRC_SERVER_REC *server)
|
||||
{
|
||||
GSList *tmp;
|
||||
|
||||
|
|
@ -1033,7 +1033,7 @@ void irc_servers_init(void)
|
|||
cmd_tag = -1;
|
||||
|
||||
signal_add_first("server connected", (SIGNAL_FUNC) sig_connected);
|
||||
signal_add_last("server disconnected", (SIGNAL_FUNC) sig_disconnected);
|
||||
signal_add_last("server destroyed", (SIGNAL_FUNC) sig_destroyed);
|
||||
signal_add_last("server quit", (SIGNAL_FUNC) sig_server_quit);
|
||||
signal_add("event 001", (SIGNAL_FUNC) event_connected);
|
||||
signal_add("event 004", (SIGNAL_FUNC) event_server_info);
|
||||
|
|
@ -1060,7 +1060,7 @@ void irc_servers_deinit(void)
|
|||
g_source_remove(cmd_tag);
|
||||
|
||||
signal_remove("server connected", (SIGNAL_FUNC) sig_connected);
|
||||
signal_remove("server disconnected", (SIGNAL_FUNC) sig_disconnected);
|
||||
signal_remove("server destroyed", (SIGNAL_FUNC) sig_destroyed);
|
||||
signal_remove("server quit", (SIGNAL_FUNC) sig_server_quit);
|
||||
signal_remove("event 001", (SIGNAL_FUNC) event_connected);
|
||||
signal_remove("event 004", (SIGNAL_FUNC) event_server_info);
|
||||
|
|
|
|||
|
|
@ -324,7 +324,7 @@ void irc_flood_init(void)
|
|||
read_settings();
|
||||
signal_add("setup changed", (SIGNAL_FUNC) read_settings);
|
||||
signal_add_first("server connected", (SIGNAL_FUNC) flood_init_server);
|
||||
signal_add("server disconnected", (SIGNAL_FUNC) flood_deinit_server);
|
||||
signal_add("server destroyed", (SIGNAL_FUNC) flood_deinit_server);
|
||||
|
||||
autoignore_init();
|
||||
settings_check();
|
||||
|
|
@ -344,5 +344,5 @@ void irc_flood_deinit(void)
|
|||
|
||||
signal_remove("setup changed", (SIGNAL_FUNC) read_settings);
|
||||
signal_remove("server connected", (SIGNAL_FUNC) flood_init_server);
|
||||
signal_remove("server disconnected", (SIGNAL_FUNC) flood_deinit_server);
|
||||
signal_remove("server destroyed", (SIGNAL_FUNC) flood_deinit_server);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -331,7 +331,7 @@ void irc_notifylist_init(void)
|
|||
notifylist_ison_init();
|
||||
notifylist_whois_init();
|
||||
signal_add("server connected", (SIGNAL_FUNC) notifylist_init_server);
|
||||
signal_add("server disconnected", (SIGNAL_FUNC) notifylist_deinit_server);
|
||||
signal_add("server destroyed", (SIGNAL_FUNC) notifylist_deinit_server);
|
||||
signal_add("event quit", (SIGNAL_FUNC) event_quit);
|
||||
signal_add("event privmsg", (SIGNAL_FUNC) event_privmsg);
|
||||
signal_add("event join", (SIGNAL_FUNC) event_join);
|
||||
|
|
@ -349,7 +349,7 @@ void irc_notifylist_deinit(void)
|
|||
notifylist_whois_deinit();
|
||||
|
||||
signal_remove("server connected", (SIGNAL_FUNC) notifylist_init_server);
|
||||
signal_remove("server disconnected", (SIGNAL_FUNC) notifylist_deinit_server);
|
||||
signal_remove("server destroyed", (SIGNAL_FUNC) notifylist_deinit_server);
|
||||
signal_remove("event quit", (SIGNAL_FUNC) event_quit);
|
||||
signal_remove("event privmsg", (SIGNAL_FUNC) event_privmsg);
|
||||
signal_remove("event join", (SIGNAL_FUNC) event_join);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue