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.4.1+ds1-2+rpi1^2~18^2^2~27 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=ac7bdabe9543a67a8496091880eb5a45eb11928c;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)) {