Mercurial > pidgin
changeset 20079:3e3246eb204c
merge of '0411be512ef271d73fb2f800df237b0953a983a1'
and '9a8e007dbbbdee9fe816195d04b6372d67f4450b'
author | Andreas Monitzer <pidgin@monitzer.com> |
---|---|
date | Sun, 16 Sep 2007 00:00:37 +0000 |
parents | ca7ab06673dd (current diff) 8c33d2e73060 (diff) |
children | 539d042c8fc6 |
files | |
diffstat | 1 files changed, 5 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/pidgin/gtkconv.c Sun Sep 16 00:00:22 2007 +0000 +++ b/pidgin/gtkconv.c Sun Sep 16 00:00:37 2007 +0000 @@ -219,7 +219,7 @@ } static gboolean -close_conv_cb(GtkWidget *w, GdkEventButton *event, PidginConversation *gtkconv) +close_conv_cb(GtkWidget *w, GdkEventButton *dontuse, PidginConversation *gtkconv) { /* We are going to destroy the conversations immediately only if the 'close immediately' * preference is selected. Otherwise, close the conversation after a reasonable timeout @@ -8833,15 +8833,10 @@ if (win->gtkconvs) { while (win->gtkconvs) { - GList *nextgtk = win->gtkconvs->next; - PidginConversation *gtkconv = win->gtkconvs->data; - GList *nextcore = gtkconv->convs->next; - PurpleConversation *conv = gtkconv->convs->data; - purple_conversation_destroy(conv); - if (!nextgtk && !nextcore) - /* we'll end up invoking ourselves when we destroy our last child */ - /* so don't destroy ourselves right now */ - return; + gboolean last = (win->gtkconvs->next == NULL); + close_conv_cb(NULL, NULL, win->gtkconvs->data); + if (last) + break; } return; }