[gtk] Fix the filetransfer portal initialization



commit 82dc7b903c53444e7de0695b77e0032353374787
Author: Matthias Clasen <mclasen redhat com>
Date:   Wed Jan 15 10:58:54 2020 -0500

    Fix the filetransfer portal initialization
    
    Reusing the cancellable only works if you don't throw
    it away after first use.

 gdk/filetransferportal.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
---
diff --git a/gdk/filetransferportal.c b/gdk/filetransferportal.c
index 7f0a35c303..ba5f6d4ef0 100644
--- a/gdk/filetransferportal.c
+++ b/gdk/filetransferportal.c
@@ -120,7 +120,7 @@ ensure_file_transfer_portal (void)
       cancellable = g_cancellable_new ();
  
       done = FALSE;
-      timeout_id = g_timeout_add_full (500, 0, give_up_on_proxy, cancellable, g_object_unref);
+      timeout_id = g_timeout_add (500, give_up_on_proxy, cancellable);
       g_bus_get (G_BUS_TYPE_SESSION,
                  cancellable,
                  got_bus,
@@ -131,7 +131,8 @@ ensure_file_transfer_portal (void)
 
       if (bus)
         {
-          timeout_id = g_timeout_add_full (500, 0, give_up_on_proxy, cancellable, g_object_unref);
+          done = FALSE;
+          timeout_id = g_timeout_add (500, give_up_on_proxy, cancellable);
           g_dbus_proxy_new (bus,
                             G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES
                             | G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS
@@ -149,6 +150,8 @@ ensure_file_transfer_portal (void)
 
           g_clear_object (&bus);
         }
+
+      g_clear_object (&cancellable);
     }
 
   if (file_transfer_proxy)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]