Mercurial > pidgin
changeset 9633:81b31af2752d
[gaim-migrate @ 10477]
[ gaim-Bugs-847795 ] HTML log files not closed properly on exit
The fix is twofold. First, make gaim_conversations_uninit, destroy conversation
windows. Second, reorder things in core_quit, to keep plugins loaded until the
end and to keep the gtk main loop from quitting until after everything else
is uninitialized.
committer: Tailor Script <tailor@pidgin.im>
author | Sean Egan <seanegan@gmail.com> |
---|---|
date | Sun, 01 Aug 2004 17:12:13 +0000 |
parents | 885bba4f9d3b |
children | 10f1d729c415 |
files | src/conversation.c src/core.c |
diffstat | 2 files changed, 9 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/conversation.c Sun Aug 01 13:04:50 2004 +0000 +++ b/src/conversation.c Sun Aug 01 17:12:13 2004 +0000 @@ -2994,5 +2994,8 @@ void gaim_conversations_uninit(void) { + gaim_signals_unregister_by_instance(gaim_conversations_get_handle()); + while (conversations) + gaim_conversation_destroy((GaimConversation*)conversations->data); }
--- a/src/core.c Sun Aug 01 13:04:50 2004 +0000 +++ b/src/core.c Sun Aug 01 17:12:13 2004 +0000 @@ -111,9 +111,6 @@ ops = gaim_core_get_ui_ops(); - if (ops != NULL && ops->quit != NULL) - ops->quit(); - /* The self destruct sequence has been initiated */ gaim_signal_emit(gaim_get_core(), "quitting"); @@ -121,7 +118,6 @@ gaim_connections_disconnect_all(); gaim_debug(GAIM_DEBUG_INFO, "main", "Unloading all plugins\n"); - gaim_plugins_destroy_all(); /* Save .xml files, remove signals, etc. */ gaim_ssl_uninit(); @@ -135,6 +131,8 @@ gaim_signals_uninit(); + gaim_plugins_destroy_all(); + if (core->ui != NULL) { g_free(core->ui); core->ui = NULL; @@ -143,6 +141,10 @@ g_free(core); _core = NULL; + + if (ops != NULL && ops->quit != NULL) + ops->quit(); + } gboolean