[tracker] tracker-extract, tracker-writeback: Don't register dbus objects AFTER aquiring service names



commit 54accc5e81a800ae6f7c3e24ea9751e58b36a6ad
Author: Karl Relton <karllinuxtest relton ntlworld com>
Date:   Mon Mar 5 12:05:44 2012 +0000

    tracker-extract, tracker-writeback: Don't register dbus objects AFTER aquiring service names
    
    Fixes GB#671314.

 src/tracker-extract/tracker-controller.c  |   23 +++++++++++++++--------
 src/tracker-writeback/tracker-writeback.c |    9 +++++++++
 2 files changed, 24 insertions(+), 8 deletions(-)
---
diff --git a/src/tracker-extract/tracker-controller.c b/src/tracker-extract/tracker-controller.c
index 4bc3b2a..2d01246 100644
--- a/src/tracker-extract/tracker-controller.c
+++ b/src/tracker-extract/tracker-controller.c
@@ -864,14 +864,6 @@ tracker_controller_dbus_start (TrackerController   *controller,
 	g_message ("  Path:'" TRACKER_EXTRACT_PATH "'");
 	g_message ("  Object Type:'%s'", G_OBJECT_TYPE_NAME (controller));
 
-	priv->bus_name_id =
-		g_bus_own_name_on_connection (priv->connection,
-		                              TRACKER_EXTRACT_SERVICE,
-		                              G_BUS_NAME_OWNER_FLAGS_NONE,
-		                              bus_name_acquired_cb,
-		                              bus_name_vanished_cb,
-		                              controller, NULL);
-
 	priv->registration_id =
 		g_dbus_connection_register_object (priv->connection,
 		                                   TRACKER_EXTRACT_PATH,
@@ -888,6 +880,21 @@ tracker_controller_dbus_start (TrackerController   *controller,
 		return FALSE;
 	}
 
+	priv->bus_name_id =
+		g_bus_own_name_on_connection (priv->connection,
+		                              TRACKER_EXTRACT_SERVICE,
+		                              G_BUS_NAME_OWNER_FLAGS_NONE,
+		                              bus_name_acquired_cb,
+		                              bus_name_vanished_cb,
+		                              controller, NULL);
+
+	if (err) {
+		g_critical ("Could not own the D-Bus name "TRACKER_EXTRACT_SERVICE", %s",
+		            err ? err->message : "no error given.");
+		g_propagate_error (error, err);
+		return FALSE;
+	}
+
 	return TRUE;
 }
 
diff --git a/src/tracker-writeback/tracker-writeback.c b/src/tracker-writeback/tracker-writeback.c
index 77fc86a..c527197 100644
--- a/src/tracker-writeback/tracker-writeback.c
+++ b/src/tracker-writeback/tracker-writeback.c
@@ -797,6 +797,8 @@ tracker_controller_dbus_start (TrackerController   *controller,
 		                                   &err);
 
 	if (err) {
+		g_critical ("Could not register the D-Bus object "TRACKER_WRITEBACK_PATH", %s",
+		            err ? err->message : "no error given.");
 		g_propagate_error (error, err);
 		return FALSE;
 	}
@@ -809,6 +811,13 @@ tracker_controller_dbus_start (TrackerController   *controller,
 		                              bus_name_vanished_cb,
 		                              controller, NULL);
 
+	if (err) {
+		g_critical ("Could not own the D-Bus name "TRACKER_WRITEBACK_SERVICE", %s",
+		            err ? err->message : "no error given.");
+		g_propagate_error (error, err);
+		return FALSE;
+	}
+
 	return TRUE;
 }
 



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