diff --git a/filter/ChangeLog b/filter/ChangeLog index ce62a5f5cd..a16abd676b 100644 --- a/filter/ChangeLog +++ b/filter/ChangeLog @@ -5,6 +5,8 @@ "%d seconds ago", etc, and update the code in set_button that uses them. Fixes #36245, translation clash between the "second" here and the one in the calendar (where it's used as "2nd"). + (button_clicked): Fix this so we don't get stuck inside + gtk_dialog_run's main loop forever. 2003-03-20 Jeffrey Stedfast diff --git a/filter/filter-datespec.c b/filter/filter-datespec.c index 9c17e11774..a81f240744 100644 --- a/filter/filter-datespec.c +++ b/filter/filter-datespec.c @@ -391,17 +391,6 @@ set_option_relative (GtkMenu *menu, FilterDatespec *fds) fds->priv->span = g_list_index (GTK_MENU_SHELL (menu)->children, w); } -static void -dialog_response (GtkWidget *dialog, int button, FilterDatespec *fds) -{ - if (button == GTK_RESPONSE_ACCEPT) { - get_values (fds); - set_button (fds); - } - - gtk_widget_destroy (dialog); -} - static void button_clicked (GtkButton *button, FilterDatespec *fds) { @@ -435,9 +424,12 @@ button_clicked (GtkButton *button, FilterDatespec *fds) gtk_box_pack_start ((GtkBox *) dialog->vbox, toplevel, TRUE, TRUE, 3); - g_signal_connect (dialog, "response", G_CALLBACK (dialog_response), fds); + if (gtk_dialog_run (dialog) == GTK_RESPONSE_ACCEPT) { + get_values (fds); + set_button (fds); + } - gtk_dialog_run (dialog); + gtk_widget_destroy (dialog); } static GtkWidget *