From 0775cd28a3d666252bd3633797363e50cfa58908 Mon Sep 17 00:00:00 2001 From: Federico Mena Quintero Date: Mon, 1 Mar 2004 18:24:06 +0000 Subject: [PATCH] Test for filter_info.uri correctly. Fixes #135379, pointed out by Damon 2004-03-01 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (list_model_filter_func): Test for filter_info.uri correctly. Fixes #135379, pointed out by Damon Chaplin. (shortcuts_get_index): Compute the bookmarks index correctly. Fixes #135714, pointed out by Damon Chaplin. (gtk_file_chooser_default_list_shortcut_folders): Handle the case with no shortcuts, and don't run off the end of the list if there are no bookmarks and their separator. Fixes #135572, patch by Damon Chaplin. --- ChangeLog | 12 ++++++++++++ ChangeLog.pre-2-10 | 12 ++++++++++++ ChangeLog.pre-2-4 | 12 ++++++++++++ ChangeLog.pre-2-6 | 12 ++++++++++++ ChangeLog.pre-2-8 | 12 ++++++++++++ gtk/gtkfilechooserdefault.c | 14 ++++++++++---- 6 files changed, 70 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8190b7ea0..16bfb9e13 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2004-03-01 Federico Mena Quintero + + * gtk/gtkfilechooserdefault.c (list_model_filter_func): Test for + filter_info.uri correctly. Fixes #135379, pointed out by Damon + Chaplin. + (shortcuts_get_index): Compute the bookmarks index correctly. + Fixes #135714, pointed out by Damon Chaplin. + (gtk_file_chooser_default_list_shortcut_folders): Handle the case + with no shortcuts, and don't run off the end of the list if there + are no bookmarks and their separator. Fixes #135572, patch by + Damon Chaplin. + Mon Mar 1 12:23:06 2004 Owen Taylor * gtk/gtklabel.c: Handle dynamically resolved bidi direction diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 8190b7ea0..16bfb9e13 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,15 @@ +2004-03-01 Federico Mena Quintero + + * gtk/gtkfilechooserdefault.c (list_model_filter_func): Test for + filter_info.uri correctly. Fixes #135379, pointed out by Damon + Chaplin. + (shortcuts_get_index): Compute the bookmarks index correctly. + Fixes #135714, pointed out by Damon Chaplin. + (gtk_file_chooser_default_list_shortcut_folders): Handle the case + with no shortcuts, and don't run off the end of the list if there + are no bookmarks and their separator. Fixes #135572, patch by + Damon Chaplin. + Mon Mar 1 12:23:06 2004 Owen Taylor * gtk/gtklabel.c: Handle dynamically resolved bidi direction diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 8190b7ea0..16bfb9e13 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,15 @@ +2004-03-01 Federico Mena Quintero + + * gtk/gtkfilechooserdefault.c (list_model_filter_func): Test for + filter_info.uri correctly. Fixes #135379, pointed out by Damon + Chaplin. + (shortcuts_get_index): Compute the bookmarks index correctly. + Fixes #135714, pointed out by Damon Chaplin. + (gtk_file_chooser_default_list_shortcut_folders): Handle the case + with no shortcuts, and don't run off the end of the list if there + are no bookmarks and their separator. Fixes #135572, patch by + Damon Chaplin. + Mon Mar 1 12:23:06 2004 Owen Taylor * gtk/gtklabel.c: Handle dynamically resolved bidi direction diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 8190b7ea0..16bfb9e13 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,15 @@ +2004-03-01 Federico Mena Quintero + + * gtk/gtkfilechooserdefault.c (list_model_filter_func): Test for + filter_info.uri correctly. Fixes #135379, pointed out by Damon + Chaplin. + (shortcuts_get_index): Compute the bookmarks index correctly. + Fixes #135714, pointed out by Damon Chaplin. + (gtk_file_chooser_default_list_shortcut_folders): Handle the case + with no shortcuts, and don't run off the end of the list if there + are no bookmarks and their separator. Fixes #135572, patch by + Damon Chaplin. + Mon Mar 1 12:23:06 2004 Owen Taylor * gtk/gtklabel.c: Handle dynamically resolved bidi direction diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 8190b7ea0..16bfb9e13 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,15 @@ +2004-03-01 Federico Mena Quintero + + * gtk/gtkfilechooserdefault.c (list_model_filter_func): Test for + filter_info.uri correctly. Fixes #135379, pointed out by Damon + Chaplin. + (shortcuts_get_index): Compute the bookmarks index correctly. + Fixes #135714, pointed out by Damon Chaplin. + (gtk_file_chooser_default_list_shortcut_folders): Handle the case + with no shortcuts, and don't run off the end of the list if there + are no bookmarks and their separator. Fixes #135572, patch by + Damon Chaplin. + Mon Mar 1 12:23:06 2004 Owen Taylor * gtk/gtklabel.c: Handle dynamically resolved bidi direction diff --git a/gtk/gtkfilechooserdefault.c b/gtk/gtkfilechooserdefault.c index 50f2d964e..0277dcee9 100644 --- a/gtk/gtkfilechooserdefault.c +++ b/gtk/gtkfilechooserdefault.c @@ -884,7 +884,7 @@ shortcuts_get_index (GtkFileChooserDefault *impl, goto out; /* If there are no bookmarks there won't be a separator */ - n += impl->num_shortcuts > 0 ? 1 : 0; + n += (impl->num_bookmarks > 0) ? 1 : 0; if (where == SHORTCUTS_BOOKMARKS) goto out; @@ -2418,7 +2418,7 @@ list_model_filter_func (GtkFileSystemModel *model, if (needed & GTK_FILE_FILTER_URI) { filter_info.uri = gtk_file_system_path_to_uri (impl->file_system, path); - if (filter_info.filename) + if (filter_info.uri) filter_info.contains |= GTK_FILE_FILTER_URI; } else @@ -3076,6 +3076,9 @@ gtk_file_chooser_default_list_shortcut_folders (GtkFileChooser *chooser) int i; GSList *list; + if (impl->num_shortcuts == 0) + return NULL; + pos = shortcuts_get_pos_for_shortcut_folder (impl, 0); if (!gtk_tree_model_iter_nth_child (GTK_TREE_MODEL (impl->shortcuts_model), &iter, NULL, pos)) g_assert_not_reached (); @@ -3091,8 +3094,11 @@ gtk_file_chooser_default_list_shortcut_folders (GtkFileChooser *chooser) list = g_slist_prepend (list, gtk_file_path_copy (shortcut)); - if (!gtk_tree_model_iter_next (GTK_TREE_MODEL (impl->shortcuts_model), &iter)) - g_assert_not_reached (); + if (i != impl->num_shortcuts - 1) + { + if (!gtk_tree_model_iter_next (GTK_TREE_MODEL (impl->shortcuts_model), &iter)) + g_assert_not_reached (); + } } return g_slist_reverse (list);