diff --git a/gtk/gtkfilechooserwidget.c b/gtk/gtkfilechooserwidget.c index 4c34c49840..34e34734d3 100644 --- a/gtk/gtkfilechooserwidget.c +++ b/gtk/gtkfilechooserwidget.c @@ -5466,7 +5466,7 @@ gtk_file_chooser_widget_get_files (GtkFileChooser *chooser) goto out; if (!is_well_formed) - return NULL; + goto empty; if (info.file_from_entry) { @@ -5476,7 +5476,7 @@ gtk_file_chooser_widget_get_files (GtkFileChooser *chooser) else if (!file_list_seen) goto file_list; else - return NULL; + goto empty; } else if (impl->toplevel_last_focus_widget == impl->browse_files_tree_view) goto file_list; @@ -5508,6 +5508,11 @@ gtk_file_chooser_widget_get_files (GtkFileChooser *chooser) } return G_LIST_MODEL (info.result); + +empty: + + g_list_store_remove_all (info.result); + return G_LIST_MODEL (info.result); } /* Shows or hides the filter widgets */