]> www.infradead.org Git - pidgin-chime.git/commitdiff
Clean up participants 'search results' properly on close
authorDavid Woodhouse <dwmw@amazon.co.uk>
Thu, 19 Oct 2017 20:09:06 +0000 (21:09 +0100)
committerDavid Woodhouse <dwmw@amazon.co.uk>
Thu, 19 Oct 2017 20:09:06 +0000 (21:09 +0100)
chat.c

diff --git a/chat.c b/chat.c
index 820161deb9140e82ffcec1d530859808175aa129..f040e479c834920f686a0f95c8c07b036a4a702a 100644 (file)
--- a/chat.c
+++ b/chat.c
@@ -265,10 +265,16 @@ void chime_destroy_chat(struct chime_chat *chat)
        serv_got_chat_left(conn, id);
 
        if (chat->meeting) {
+               if (chat->participants_ui) {
+                       purple_notify_close(PURPLE_NOTIFY_SEARCHRESULTS, chat->participants_ui);
+                       chat->participants_ui = NULL;
+               }
+
+               g_signal_handlers_disconnect_matched(chat->call, G_SIGNAL_MATCH_DATA,
+                                                    0, 0, NULL, NULL, chat);
+
                if (chat->audio) {
                        chime_connection_call_audio_close(chat->audio);
-                       g_signal_handlers_disconnect_matched(chat->call, G_SIGNAL_MATCH_DATA,
-                                                            0, 0, NULL, NULL, chat);
                        chat->audio = NULL;
                }
                chime_connection_close_meeting(cxn, chat->meeting);