diff options
author | Federico Mena Quintero <federico@novell.com> | 2009-08-31 16:13:05 -0500 |
---|---|---|
committer | Benjamin Otte <otte@gnome.org> | 2009-10-15 22:06:15 +0200 |
commit | 3b8697307523576106e5c38fb4a2a83260cc94ed (patch) | |
tree | e79d79819b8b9a8355ec7986fe57c26d626587ba /gtk/gtkfilesystemmodel.c | |
parent | 3f7c1446053679271bdffc1fe6f5af26e4890f61 (diff) | |
download | gtk+-3b8697307523576106e5c38fb4a2a83260cc94ed.tar.gz |
Clarify the code flow in gtk_file_system_model_got_files()
Signed-off-by: Federico Mena Quintero <federico@novell.com>
Diffstat (limited to 'gtk/gtkfilesystemmodel.c')
-rw-r--r-- | gtk/gtkfilesystemmodel.c | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/gtk/gtkfilesystemmodel.c b/gtk/gtkfilesystemmodel.c index 00a531b61d..919be4c513 100644 --- a/gtk/gtkfilesystemmodel.c +++ b/gtk/gtkfilesystemmodel.c @@ -971,15 +971,21 @@ gtk_file_system_model_got_files (GObject *object, GAsyncResult *res, gpointer da g_object_unref (info); } g_list_free (files); - } - if (files == NULL) + g_file_enumerator_next_files_async (enumerator, + g_file_is_native (model->dir) ? 50 * FILES_PER_QUERY : FILES_PER_QUERY, + IO_PRIORITY, + model->cancellable, + gtk_file_system_model_got_files, + model); + } + else { g_file_enumerator_close_async (enumerator, IO_PRIORITY, model->cancellable, gtk_file_system_model_closed_enumerator, - NULL); + model); if (model->dir_thaw_source != 0) { g_source_remove (model->dir_thaw_source); @@ -987,20 +993,13 @@ gtk_file_system_model_got_files (GObject *object, GAsyncResult *res, gpointer da _gtk_file_system_model_thaw_updates (model); } + g_signal_emit (model, file_system_model_signals[FINISHED_LOADING], 0, error); + if (error) g_error_free (error); - else - g_signal_emit (model, file_system_model_signals[FINISHED_LOADING], 0, NULL); g_object_unref (model); } - else - g_file_enumerator_next_files_async (enumerator, - g_file_is_native (model->dir) ? 50 * FILES_PER_QUERY : FILES_PER_QUERY, - IO_PRIORITY, - model->cancellable, - gtk_file_system_model_got_files, - model); gdk_threads_leave (); } |