diff options
Diffstat (limited to 'filter')
-rw-r--r-- | filter/ChangeLog | 2 | ||||
-rw-r--r-- | filter/filter-datespec.c | 18 |
2 files changed, 7 insertions, 13 deletions
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 <fejj@ximian.com> 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 @@ -392,17 +392,6 @@ set_option_relative (GtkMenu *menu, FilterDatespec *fds) } 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) { struct _FilterDatespecPrivate *p = PRIV(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 * |