[gnome-control-center] printers: Don't pass GDBusConnection references around



commit f3bf0080d7a8b3bb3b8f3ffe212f3270f94cce33
Author: Robert Ancell <robert ancell canonical com>
Date:   Fri Jun 26 16:27:22 2020 +1200

    printers: Don't pass GDBusConnection references around
    
    An internal GTask will hold a reference to it for the duration of the async call.

 panels/printers/pp-job.c                |  6 ++----
 panels/printers/pp-new-printer-dialog.c |  3 +--
 panels/printers/pp-new-printer.c        | 23 +++++++----------------
 panels/printers/pp-printer.c            |  2 --
 panels/printers/pp-utils.c              | 20 ++++++--------------
 5 files changed, 16 insertions(+), 38 deletions(-)
---
diff --git a/panels/printers/pp-job.c b/panels/printers/pp-job.c
index 2753754d1..bd567e03c 100644
--- a/panels/printers/pp-job.c
+++ b/panels/printers/pp-job.c
@@ -77,14 +77,13 @@ pp_job_cancel_purge_async_dbus_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           NULL);
-  g_object_unref (source_object);
 }
 
 void
 pp_job_cancel_purge_async (PpJob        *self,
                            gboolean      job_purge)
 {
-  GDBusConnection *bus;
+  g_autoptr(GDBusConnection) bus = NULL;
   g_autoptr(GError) error = NULL;
   gint            *job_id;
 
@@ -123,14 +122,13 @@ pp_job_set_hold_until_async_dbus_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           NULL);
-  g_object_unref (source_object);
 }
 
 void
 pp_job_set_hold_until_async (PpJob        *self,
                              const gchar  *job_hold_until)
 {
-  GDBusConnection  *bus;
+  g_autoptr(GDBusConnection) bus = NULL;
   g_autoptr(GError) error = NULL;
   gint             *job_id;
 
diff --git a/panels/printers/pp-new-printer-dialog.c b/panels/printers/pp-new-printer-dialog.c
index accb4642b..04b6b0469 100644
--- a/panels/printers/pp-new-printer-dialog.c
+++ b/panels/printers/pp-new-printer-dialog.c
@@ -870,7 +870,6 @@ group_physical_devices_dbus_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output)
     {
@@ -918,7 +917,7 @@ get_cups_devices_cb (GPtrArray *devices,
                      gpointer  user_data)
 {
   PpNewPrinterDialog         *self = user_data;
-  GDBusConnection            *bus;
+  g_autoptr(GDBusConnection)  bus = NULL;
   GVariantBuilder             device_list;
   GVariantBuilder             device_hash;
   PpPrintDevice             **all_devices;
diff --git a/panels/printers/pp-new-printer.c b/panels/printers/pp-new-printer.c
index 1c325b46e..8c316c28e 100644
--- a/panels/printers/pp-new-printer.c
+++ b/panels/printers/pp-new-printer.c
@@ -398,7 +398,6 @@ printer_add_real_async_dbus_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output)
     {
@@ -427,8 +426,8 @@ printer_add_real_async_dbus_cb (GObject      *source_object,
 static void
 printer_add_real_async (PpNewPrinter *self)
 {
-  GDBusConnection     *bus;
-  g_autoptr(GError)    error = NULL;
+  g_autoptr(GDBusConnection) bus = NULL;
+  g_autoptr(GError) error = NULL;
 
   if (!self->ppd_name && !self->ppd_file_name)
     {
@@ -527,7 +526,6 @@ printer_add_async_scb3 (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output)
     {
@@ -569,7 +567,6 @@ install_printer_drivers_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output == NULL)
     {
@@ -579,7 +576,7 @@ install_printer_drivers_cb (GObject      *source_object,
 
   if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
     {
-      GDBusConnection  *bus;
+      g_autoptr(GDBusConnection) bus = NULL;
       g_autoptr(GError) bus_error = NULL;
 
       /* Try whether CUPS has a driver for the new printer */
@@ -616,7 +613,7 @@ printer_add_async_scb (GObject      *source_object,
                        gpointer      user_data)
 {
   PpNewPrinter        *self = user_data;
-  GDBusConnection     *bus;
+  g_autoptr(GDBusConnection) bus = NULL;
   GVariantBuilder      array_builder;
   g_autoptr(GVariant)  output = NULL;
   gboolean             cancelled = FALSE;
@@ -626,7 +623,6 @@ printer_add_async_scb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output)
     {
@@ -783,7 +779,6 @@ printer_set_accepting_jobs_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output == NULL)
     {
@@ -807,7 +802,6 @@ printer_set_enabled_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output == NULL)
     {
@@ -873,7 +867,6 @@ install_package_names_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output == NULL)
     {
@@ -976,7 +969,6 @@ search_files_cb (GObject      *source_object,
         }
       else
         {
-          g_object_unref (source_object);
           install_missing_executables_cb (data);
         }
     }
@@ -1056,7 +1048,6 @@ DBus method \"MissingExecutables\" to find missing executables and filters.");
     }
   else
     {
-      g_object_unref (source_object);
       install_missing_executables_cb (data);
     }
 }
@@ -1065,7 +1056,7 @@ static void
 printer_get_ppd_cb (const gchar *ppd_filename,
                     gpointer     user_data)
 {
-  GDBusConnection  *bus;
+  g_autoptr(GDBusConnection) bus = NULL;
   IMEData          *data = (IMEData *) user_data;
   g_autoptr(GError) error = NULL;
 
@@ -1135,7 +1126,7 @@ pp_maintenance_command_execute_cb (GObject      *source_object,
 static void
 printer_configure_async (PpNewPrinter *self)
 {
-  GDBusConnection      *bus;
+  g_autoptr(GDBusConnection) bus = NULL;
   PCData               *data;
   IMEData              *ime_data;
   gchar               **values;
@@ -1255,7 +1246,7 @@ pp_new_printer_add_async (PpNewPrinter        *self,
     }
   else if (self->device_id)
     {
-      GDBusConnection  *bus;
+      g_autoptr(GDBusConnection) bus = NULL;
       g_autoptr(GError) error = NULL;
 
       /* Try whether CUPS has a driver for the new printer */
diff --git a/panels/printers/pp-printer.c b/panels/printers/pp-printer.c
index e348fba0c..2d78ee531 100644
--- a/panels/printers/pp-printer.c
+++ b/panels/printers/pp-printer.c
@@ -157,7 +157,6 @@ printer_rename_dbus_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output != NULL)
     {
@@ -422,7 +421,6 @@ pp_printer_delete_dbus_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output != NULL)
     {
diff --git a/panels/printers/pp-utils.c b/panels/printers/pp-utils.c
index 6f79b9258..b62813009 100644
--- a/panels/printers/pp-utils.c
+++ b/panels/printers/pp-utils.c
@@ -1427,7 +1427,6 @@ printer_set_ppd_async_dbus_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output)
     {
@@ -1475,7 +1474,7 @@ printer_set_ppd_async (const gchar  *printer_name,
                        PSPCallback   callback,
                        gpointer      user_data)
 {
-  GDBusConnection  *bus;
+  g_autoptr(GDBusConnection) bus = NULL;
   PSPData          *data;
   g_autoptr(GError) error = NULL;
 
@@ -1532,7 +1531,7 @@ printer_set_ppd_file_async_scb (GObject      *source_object,
                                 GAsyncResult *res,
                                 gpointer      user_data)
 {
-  GDBusConnection  *bus;
+  g_autoptr(GDBusConnection) bus = NULL;
   gboolean          success;
   PSPData          *data = (PSPData *) user_data;
   g_autoptr(GError) error = NULL;
@@ -1862,7 +1861,6 @@ get_ppd_names_async_dbus_scb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output)
     {
@@ -1958,7 +1956,7 @@ get_device_attributes_cb (gchar    *device_id,
                           gchar    *device_uri,
                           gpointer  user_data)
 {
-  GDBusConnection  *bus;
+  g_autoptr(GDBusConnection) bus = NULL;
   g_autoptr(GError) error = NULL;
   GPNData          *data = (GPNData *) user_data;
 
@@ -2074,7 +2072,6 @@ get_device_attributes_async_dbus_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output)
     {
@@ -2205,8 +2202,6 @@ get_device_attributes_async_dbus_cb (GObject      *source_object,
         }
     }
 
-  g_object_unref (source_object);
-
   if (data->backend_list)
     {
       g_list_free_full (data->backend_list, g_free);
@@ -2228,7 +2223,7 @@ static void
 get_device_attributes_async_scb (GHashTable *result,
                                  gpointer    user_data)
 {
-  GDBusConnection  *bus;
+  g_autoptr(GDBusConnection) bus = NULL;
   GVariantBuilder   include_scheme_builder;
   IPPAttribute     *attr;
   GDAData          *data = (GDAData *) user_data;
@@ -3071,7 +3066,6 @@ printer_add_option_async_dbus_cb (GObject      *source_object,
   output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
                                           res,
                                           &error);
-  g_object_unref (source_object);
 
   if (output)
     {
@@ -3106,7 +3100,7 @@ printer_add_option_async (const gchar   *printer_name,
                           gpointer       user_data)
 {
   GVariantBuilder   array_builder;
-  GDBusConnection  *bus;
+  g_autoptr(GDBusConnection) bus = NULL;
   PAOData          *data;
   g_autoptr(GError) error = NULL;
   gint              i;
@@ -3275,7 +3269,6 @@ get_cups_devices_async_dbus_cb (GObject      *source_object,
 
       g_list_free_full (data->backend_list, g_free);
       data->backend_list = NULL;
-      g_object_unref (source_object);
       g_clear_object (&data->cancellable);
       g_free (data);
 
@@ -3353,7 +3346,6 @@ get_cups_devices_async_dbus_cb (GObject      *source_object,
                       data->user_data);
     }
 
-  g_object_unref (source_object);
   g_clear_object (&data->cancellable);
   g_free (data);
 }
@@ -3363,7 +3355,7 @@ get_cups_devices_async (GCancellable *cancellable,
                         GCDCallback   callback,
                         gpointer      user_data)
 {
-  GDBusConnection  *bus;
+  g_autoptr(GDBusConnection) bus = NULL;
   GVariantBuilder   include_scheme_builder;
   GCDData          *data;
   g_autoptr(GError) error = NULL;


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