diff options
-rw-r--r-- | e-util/ChangeLog | 6 | ||||
-rw-r--r-- | e-util/e-dialog-utils.c | 8 |
2 files changed, 10 insertions, 4 deletions
diff --git a/e-util/ChangeLog b/e-util/ChangeLog index c5714f56c7..eba2575f0e 100644 --- a/e-util/ChangeLog +++ b/e-util/ChangeLog @@ -1,3 +1,9 @@ +2002-06-07 Not Zed <NotZed@Ximian.com> + + * e-dialog-utils.c (e_gnome_warning_dialog_parented): + (e_gnome_ok_cancel_dialog_parented): Use connect_while_alive, so + we're not called after we've quit. See bug #15397. + 2002-06-03 Not Zed <NotZed@Ximian.com> * e-msgport.c (e_msgport_wait): Protect against EINTR (irix?), see diff --git a/e-util/e-dialog-utils.c b/e-util/e-dialog-utils.c index 0102c45167..4561488abd 100644 --- a/e-util/e-dialog-utils.c +++ b/e-util/e-dialog-utils.c @@ -192,8 +192,8 @@ e_gnome_warning_dialog_parented (const char *warning, GtkWindow *parent) GtkWidget *dialog; dialog = gnome_warning_dialog_parented (warning, parent); - gtk_signal_connect (GTK_OBJECT (parent), "destroy", - e_gnome_dialog_parent_destroyed, dialog); + gtk_signal_connect_while_alive (GTK_OBJECT (parent), "destroy", + e_gnome_dialog_parent_destroyed, dialog, GTK_OBJECT(dialog)); return dialog; } @@ -205,8 +205,8 @@ e_gnome_ok_cancel_dialog_parented (const char *message, GnomeReplyCallback callb GtkWidget *dialog; dialog = gnome_ok_cancel_dialog_parented (message, callback, data, parent); - gtk_signal_connect (GTK_OBJECT (parent), "destroy", - e_gnome_dialog_parent_destroyed, dialog); + gtk_signal_connect_while_alive (GTK_OBJECT (parent), "destroy", + e_gnome_dialog_parent_destroyed, dialog, GTK_OBJECT(dialog)); return dialog; } |