If someone closed the exit dialog (not using cancel) the exit_dialog pointer got...
authorhandyande <handyande>
Wed, 11 Jan 2006 14:22:54 +0000 (14:22 +0000)
committerhandyande <handyande@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 11 Jan 2006 14:22:54 +0000 (14:22 +0000)
SVN revision: 19724

src/bin/e_actions.c

index 392d65c..773c087 100644 (file)
@@ -1262,11 +1262,21 @@ _e_actions_cb_exit_dialog_cancel(void *data, E_Dialog *dia)
    exit_dialog = NULL;
 }
 
+static void
+_e_actions_cb_exit_dialog_delete(E_Win *win)
+{
+   E_Dialog *dia;
+
+   dia = win->data;
+   _e_actions_cb_exit_dialog_cancel(NULL, dia);
+}
+
 ACT_FN_GO(exit)
 {
    if (exit_dialog) e_object_del(E_OBJECT(exit_dialog));
    exit_dialog = e_dialog_new(e_container_current_get(e_manager_current_get()));
    if (!exit_dialog) return;
+   e_win_delete_callback_set(exit_dialog->win, _e_actions_cb_exit_dialog_delete);
    e_dialog_title_set(exit_dialog, _("Are you sure you want to exit?"));
    e_dialog_text_set(exit_dialog,
                     _("You requested to exit Enlightenment.<br>"