From: Georges Basile Stavracas Neto Date: Sat, 18 Sep 2021 03:17:36 +0000 (-0300) Subject: filechooserwidget: Return an id in get_choice() X-Git-Tag: archive/raspbian/4.6.5+ds-1+rpi1~1^2~19^2~5^2~331^2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=02bb23486fa40e9a3e37097c2e1ca0a70ba193ab;p=gtk4.git filechooserwidget: Return an id in get_choice() gtk_file_chooser_widget_get_choice() is supposed to return the option id of the choice, but it currently is returning the option label. Return the option id instead. --- diff --git a/gtk/gtkfilechooserwidget.c b/gtk/gtkfilechooserwidget.c index 88e08c171b..a2310f35d8 100644 --- a/gtk/gtkfilechooserwidget.c +++ b/gtk/gtkfilechooserwidget.c @@ -8060,10 +8060,13 @@ gtk_file_chooser_widget_get_choice (GtkFileChooser *chooser, widget = (GtkWidget *)g_hash_table_lookup (impl->choices, id); if (GTK_IS_DROP_DOWN (widget)) { - gpointer selected = gtk_drop_down_get_selected_item (GTK_DROP_DOWN (widget)); - if (GTK_IS_STRING_OBJECT (selected)) - return gtk_string_object_get_string (GTK_STRING_OBJECT (selected)); - return NULL; + const char **options; + guint selected; + + options = (const char **) g_object_get_data (G_OBJECT (widget), "options"); + selected = gtk_drop_down_get_selected (GTK_DROP_DOWN (widget)); + + return options[selected]; } else if (GTK_IS_CHECK_BUTTON (widget)) {