tracker r1445 - in branches/xesam-support: . src/trackerd



Author: pvanhoof
Date: Fri May 16 16:38:45 2008
New Revision: 1445
URL: http://svn.gnome.org/viewvc/tracker?rev=1445&view=rev

Log:
More merging with indexer-split

Modified:
   branches/xesam-support/ChangeLog
   branches/xesam-support/src/trackerd/tracker-dbus.c
   branches/xesam-support/src/trackerd/tracker-dbus.h
   branches/xesam-support/src/trackerd/tracker-main.c

Modified: branches/xesam-support/src/trackerd/tracker-dbus.c
==============================================================================
--- branches/xesam-support/src/trackerd/tracker-dbus.c	(original)
+++ branches/xesam-support/src/trackerd/tracker-dbus.c	Fri May 16 16:38:45 2008
@@ -124,29 +124,26 @@
 	g_object_unref (data);
 }
 
-gboolean
-tracker_dbus_init (Tracker *tracker)
+gboolean 
+tracker_dbus_preinit (Tracker *tracker, DBusGConnection **connection_out, DBusGProxy **proxy_out)
 {
         DBusGConnection *connection;
         DBusGProxy      *proxy;
-        GObject         *object;
         GError          *error = NULL;
 
         g_return_val_if_fail (tracker != NULL, FALSE);
 
+
         connection = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
 
         if (!connection) {
                 tracker_error ("Could not connect to the DBus session bus, %s",
                                error ? error->message : "no error given.");
+                if (error)
+			g_error_free (error);
                 return FALSE;
         }
 
-        /* Don't reinitialize */
-        if (objects) {
-                return TRUE;
-	}
-
         /* The definitions below (DBUS_SERVICE_DBUS, etc) are
          * predefined for us to just use.
          */
@@ -160,6 +157,25 @@
                 return FALSE;
         }
 
+        *connection_out = connection;
+        *proxy_out = proxy;
+
+        return TRUE;
+}
+
+gboolean
+tracker_dbus_init (Tracker *tracker, DBusGConnection *connection, DBusGProxy *proxy)
+{
+        GObject         *object;
+ 
+        g_return_val_if_fail (tracker != NULL, FALSE);
+
+        /* Don't reinitialize */
+        if (objects) {
+                return TRUE;
+        }
+
+
         /* Add org.freedesktop.Tracker */
         if (!(object = dbus_register_object (connection, 
                                              proxy,

Modified: branches/xesam-support/src/trackerd/tracker-dbus.h
==============================================================================
--- branches/xesam-support/src/trackerd/tracker-dbus.h	(original)
+++ branches/xesam-support/src/trackerd/tracker-dbus.h	Fri May 16 16:38:45 2008
@@ -78,7 +78,12 @@
         gpointer data2;
 } TrackerDBusData;
 
-gboolean         tracker_dbus_init                       (Tracker *tracker);
+gboolean         tracker_dbus_preinit                    (Tracker *tracker, 
+							  DBusGConnection **connection_out, 
+							  DBusGProxy **proxy_out);
+gboolean         tracker_dbus_init                       (Tracker *tracker,
+							  DBusGConnection *connection, 
+							  DBusGProxy *proxy);
 void             tracker_dbus_shutdown                   (void);
 guint            tracker_dbus_get_next_request_id        (void);
 GObject *        tracker_dbus_get_object                 (GType                type);

Modified: branches/xesam-support/src/trackerd/tracker-main.c
==============================================================================
--- branches/xesam-support/src/trackerd/tracker-main.c	(original)
+++ branches/xesam-support/src/trackerd/tracker-main.c	Fri May 16 16:38:45 2008
@@ -820,6 +820,8 @@
 gint
 main (gint argc, gchar *argv[])
 {
+	DBusGConnection *connection = NULL;
+	DBusGProxy     *proxy = NULL;
 	GOptionContext *context = NULL;
 	GError         *error = NULL;
 	GThread        *thread; 
@@ -945,12 +947,16 @@
 		tracker_config_set_initial_sleep (tracker->config, initial_sleep);
 	}
 
-	sanity_check_option_values ();
-
 	/* Initialise other subsystems */
 	tracker_log_init (log_filename, 
                           tracker_config_get_verbosity (tracker->config), 
                           fatal_errors);
+
+	if (!tracker_dbus_preinit (tracker, &connection, &proxy))
+		return EXIT_FAILURE;
+
+	sanity_check_option_values ();
+
 	tracker_nfs_lock_init (tracker->root_dir,
 			       tracker_config_get_nfs_locking (tracker->config));
 	tracker_db_manager_init (tracker->data_dir,
@@ -958,7 +964,7 @@
 				 tracker->sys_tmp_root_dir);
 	tracker_xesam_init ();
 	tracker_cache_init ();
-        tracker_service_manager_init ();
+	tracker_service_manager_init ();
 	tracker_email_init (tracker->config);
 
 #ifdef HAVE_HAL 
@@ -1007,7 +1013,7 @@
         /* If we are already running, this should return some
          * indication.
          */
-        if (!tracker_dbus_init (tracker)) {
+        if (!tracker_dbus_init (tracker, connection, proxy)) {
                 return EXIT_FAILURE;
         }
 



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