[gnome-control-center] object-storage: Avoid double free when propagating error



commit 6ec0bcde1520e0cee19f6596b4b03c801a1ca571
Author: Andrea Azzarone <azzaronea gmail com>
Date:   Mon May 7 16:20:13 2018 +0200

    object-storage: Avoid double free when propagating error
    
    In cc_object_storage_create_dbus_proxy_sync and
    cc_object_storage_create_dbus_proxy_finish we need to use g_steal_pointer to
    make sure local_error is not double freed.
    
    Fixes: https://gitlab.gnome.org/GNOME/gnome-control-center/issues/86

 shell/cc-object-storage.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/shell/cc-object-storage.c b/shell/cc-object-storage.c
index 0e708dc3b..46038cc34 100644
--- a/shell/cc-object-storage.c
+++ b/shell/cc-object-storage.c
@@ -256,7 +256,7 @@ cc_object_storage_create_dbus_proxy_sync (GBusType          bus_type,
 
   if (local_error)
     {
-      g_propagate_error (error, local_error);
+      g_propagate_error (error, g_steal_pointer (&local_error));
       return NULL;
     }
 
@@ -385,7 +385,7 @@ cc_object_storage_create_dbus_proxy_finish (GAsyncResult  *result,
   /* If the proxy is not cached, do the normal caching routine */
   if (local_error)
     {
-      g_propagate_error (error, local_error);
+      g_propagate_error (error, g_steal_pointer (&local_error));
       return NULL;
     }
 


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