changeset 7450:685736e14aac

[gaim-migrate @ 8061] from bug #836143 ----------------------------------------------------------------- Date: 2003-11-06 17:19 Sender: zuperdee Logged In: YES user_id=347499 Alright folks, I HAVE A FIX!!!! I repeat, I HAVE A FIX!!!!!!!!! Basically, this is what was wrong: the account_win_destroy_cb function was failing to destroy the window when the "window delete" event was happening. I reviewed the code, and it appears there are only 2 places where that function is called, and in BOTH cases, gtk_widget_destroy(dialog->window) was called before calling account_win_destroy_cb. That's ugly!!!! So, my patch rearranges things so gtk_widget_destroy is called at the beginning of account_win_destroy_cb. That way, it *DOES* destroy the window as it is supposed to, and it removes a couple unnecessary lines of code. Woohoo!!!!!!!!! I've tested it here on my own system, and it appears to work, but I'd appreciate it if someone else could verify my fix before it is checked in (should it be accepted). The fix is in Patch #837542 here on Sourceforge. :-) Yours Truly, Daniel (Yes, I am excited!!! I just fixed a problem in Gaim that has been bugging me for some time. I *HATE* instability... Call me the Segfault Avenger. ;-)) --------------------------------------------------------------- committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Thu, 06 Nov 2003 23:29:40 +0000
parents 126fceb88bec
children 81959bd9fe1f
files src/gtkaccount.c
diffstat 1 files changed, 2 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/gtkaccount.c	Thu Nov 06 20:40:49 2003 +0000
+++ b/src/gtkaccount.c	Thu Nov 06 23:29:40 2003 +0000
@@ -929,6 +929,8 @@
 account_win_destroy_cb(GtkWidget *w, GdkEvent *event,
 						 AccountPrefsDialog *dialog)
 {
+	gtk_widget_destroy(dialog->window);
+
 	if (dialog->user_split_entries != NULL)
 		g_list_free(dialog->user_split_entries);
 
@@ -947,8 +949,6 @@
 static void
 cancel_account_prefs_cb(GtkWidget *w, AccountPrefsDialog *dialog)
 {
-	gtk_widget_destroy(dialog->window);
-
 	account_win_destroy_cb(NULL, NULL, dialog);
 }
 
@@ -1160,8 +1160,6 @@
 		}
 	}
 
-	gtk_widget_destroy(dialog->window);
-
 	ret = dialog->account;
 
 	account_win_destroy_cb(NULL, NULL, dialog);