Index: gtkfilechooserdefault.c
===================================================================
RCS file: /cvs/gnome/gtk+/gtk/gtkfilechooserdefault.c,v
retrieving revision 1.240.2.22
diff -u -r1.240.2.22 gtkfilechooserdefault.c
--- gtkfilechooserdefault.c	14 Jun 2005 23:19:56 -0000	1.240.2.22
+++ gtkfilechooserdefault.c	15 Jun 2005 01:00:28 -0000
@@ -4844,6 +4844,7 @@
   g_return_if_fail (impl->action == GTK_FILE_CHOOSER_ACTION_SAVE
 		    || impl->action == GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER);
 
+  pending_select_paths_free (impl);
   _gtk_file_chooser_entry_set_file_part (GTK_FILE_CHOOSER_ENTRY (impl->save_file_name_entry), name);
 }
 
@@ -4982,6 +4983,7 @@
   GtkTreeSelection *selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (impl->browse_files_tree_view));
 
   gtk_tree_selection_unselect_all (selection);
+  pending_select_paths_free (impl);
 }
 
 /* Checks whether the filename entry for the Save modes contains a well-formed filename.
@@ -6020,7 +6022,7 @@
       g_assert (!impl->select_multiple);
       selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (impl->browse_files_tree_view));
       if (!gtk_tree_selection_get_selected (selection, NULL, &iter))
-	return;
+	goto out; /* normal processing */
 
       gtk_tree_model_sort_convert_iter_to_child_iter (impl->sort_model,
 						      &child_iter,
@@ -6030,6 +6032,8 @@
       if (!info)
 	return; /* We are on the editable row for New Folder */
     }
+
+ out:
 
   update_chooser_entry (impl);
   check_preview_change (impl);
