]> www.infradead.org Git - pidgin-chime.git/commitdiff
Fix use-after-free of room->members when it's reopened
authorDavid Woodhouse <dwmw@amazon.co.uk>
Thu, 22 Mar 2018 23:56:52 +0000 (23:56 +0000)
committerDavid Woodhouse <dwmw@amazon.co.uk>
Fri, 23 Mar 2018 00:08:48 +0000 (00:08 +0000)
chime-room.c

index d9b30ac8c937c2ac0caa92bc6bcb82f09a29219a..8167932198591d45a21176fbce7aa637b7bf4115 100644 (file)
@@ -760,8 +760,10 @@ static void close_room(gpointer key, gpointer val, gpointer data)
                chime_jugg_unsubscribe(room->cxn, room->channel, "RoomMembership", room_membership_jugg_cb, room);
                room->cxn = NULL;
        }
-       if (room->members)
-               g_hash_table_remove_all(room->members);
+       if (room->members) {
+               g_hash_table_destroy(room->members);
+               room->members = NULL;
+       }
        room->members_done[0] = room->members_done[1] = FALSE;
 }