[gtk/gbsneto/filechooser-column-view: 145/161] filesystemmodel: Fix a possible problem
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/gbsneto/filechooser-column-view: 145/161] filesystemmodel: Fix a possible problem
- Date: Thu, 20 Oct 2022 19:22:28 +0000 (UTC)
commit 33f87921de38d1bd870fa3edbd632dd872d35397
Author: Matthias Clasen <mclasen redhat com>
Date: Tue Oct 11 23:32:35 2022 -0400
filesystemmodel: Fix a possible problem
If the async query fails to reproduce a file info,
we still need to thaw the model, otherwise it ends
up frozen forever.
This was deduced by reading the code, I haven't
actually seen it happen.
gtk/gtkfilesystemmodel.c | 15 ++++++---------
1 file changed, 6 insertions(+), 9 deletions(-)
---
diff --git a/gtk/gtkfilesystemmodel.c b/gtk/gtkfilesystemmodel.c
index 87cd5d4ca0..d937f23f29 100644
--- a/gtk/gtkfilesystemmodel.c
+++ b/gtk/gtkfilesystemmodel.c
@@ -607,22 +607,19 @@ query_done_helper (GObject * object,
gpointer data,
gboolean do_thaw_updates)
{
- GtkFileSystemModel *model;
+ GtkFileSystemModel *model = GTK_FILE_SYSTEM_MODEL (data);
GFile *file = G_FILE (object);
GFileInfo *info;
info = g_file_query_info_finish (file, res, NULL);
- if (info == NULL)
- return;
-
- model = GTK_FILE_SYSTEM_MODEL (data);
-
- _gtk_file_system_model_update_file (model, file, info);
+ if (info)
+ {
+ _gtk_file_system_model_update_file (model, file, info);
+ g_object_unref (info);
+ }
if (do_thaw_updates)
thaw_updates (model);
-
- g_object_unref (info);
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]