Mercurial > pidgin
changeset 18575:d767cd75d088
pidgin_accounts_window_hide() should actually dispose of the window. Fixes #2193.
author | Daniel Atallah <daniel.atallah@gmail.com> |
---|---|
date | Fri, 20 Jul 2007 18:11:26 +0000 |
parents | 94f4048f1380 |
children | 65aef3c97d3a |
files | pidgin/gtkaccount.c |
diffstat | 1 files changed, 8 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/pidgin/gtkaccount.c Fri Jul 20 16:31:39 2007 +0000 +++ b/pidgin/gtkaccount.c Fri Jul 20 18:11:26 2007 +0000 @@ -504,7 +504,7 @@ /* Google Talk default domain hackery! */ menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(dialog->protocol_menu)); item = gtk_menu_get_active(GTK_MENU(menu)); - if (value == NULL && g_object_get_data(G_OBJECT(item), "fake") && + if (value == NULL && g_object_get_data(G_OBJECT(item), "fake") && !strcmp(purple_account_user_split_get_text(split), _("Domain"))) value = "gmail.com"; @@ -1814,6 +1814,10 @@ static gint accedit_win_destroy_cb(GtkWidget *w, GdkEvent *event, AccountsWindow *dialog) { + /* Since this is called as the window is closing, we don't need + * pidgin_accounts_window_hide() to also dispose of the window */ + dialog->window = NULL; + pidgin_accounts_window_hide(); return 0; @@ -1924,8 +1928,6 @@ static void close_accounts_cb(GtkWidget *w, AccountsWindow *dialog) { - gtk_widget_destroy(dialog->window); - pidgin_accounts_window_hide(); } @@ -2401,6 +2403,9 @@ if (accounts_window == NULL) return; + if (accounts_window->window != NULL) + gtk_widget_destroy(accounts_window->window); + purple_signals_disconnect_by_handle(accounts_window); purple_prefs_disconnect_by_handle(accounts_window);