forked from AuroraMiddleware/gtk
filechooserentry: Ensure the base folder is always valid
If the base folder is set to NULL, then we just assume the home dir. FIXME: Should we disallow a NULL folder?
This commit is contained in:
parent
e0859004f6
commit
35198e142d
@ -199,6 +199,7 @@ _gtk_file_chooser_entry_init (GtkFileChooserEntry *chooser_entry)
|
||||
GtkCellRenderer *cell;
|
||||
|
||||
chooser_entry->local_only = TRUE;
|
||||
chooser_entry->base_folder = g_file_new_for_path (g_get_home_dir ());
|
||||
|
||||
g_object_set (chooser_entry, "truncate-multiline", TRUE, NULL);
|
||||
|
||||
@ -1647,14 +1648,22 @@ void
|
||||
_gtk_file_chooser_entry_set_base_folder (GtkFileChooserEntry *chooser_entry,
|
||||
GFile *file)
|
||||
{
|
||||
if (file)
|
||||
g_object_ref (file);
|
||||
else
|
||||
file = g_file_new_for_path (g_get_home_dir ());
|
||||
|
||||
if (g_file_equal (chooser_entry->base_folder, file))
|
||||
{
|
||||
g_object_unref (file);
|
||||
return;
|
||||
}
|
||||
|
||||
if (chooser_entry->base_folder)
|
||||
g_object_unref (chooser_entry->base_folder);
|
||||
|
||||
chooser_entry->base_folder = file;
|
||||
|
||||
if (chooser_entry->base_folder)
|
||||
g_object_ref (chooser_entry->base_folder);
|
||||
|
||||
clear_completions (chooser_entry);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user