Tomas Bzatek 94fa224
From 2a1c0cca80bb8a910c0026e0eab1f16c6e4c845b Mon Sep 17 00:00:00 2001
Tomas Bzatek 94fa224
From: Tomas Bzatek <tbzatek@redhat.com>
Tomas Bzatek 94fa224
Date: Tue, 20 Oct 2009 17:01:55 +0200
Tomas Bzatek 94fa224
Subject: [PATCH] Handle failed connection to tracker daemon 0.7 series
Tomas Bzatek 94fa224
Tomas Bzatek 94fa224
Also, consolidate string memory management, to be consistent and clear
Tomas Bzatek 94fa224
on a first sight.
Tomas Bzatek 94fa224
Tomas Bzatek 94fa224
Related to changes in bug 596082.
Tomas Bzatek 94fa224
---
Tomas Bzatek 94fa224
 .../nautilus-search-engine-tracker.c               |   19 ++++++++-----------
Tomas Bzatek 94fa224
 1 files changed, 8 insertions(+), 11 deletions(-)
Tomas Bzatek 94fa224
Tomas Bzatek 94fa224
diff --git a/libnautilus-private/nautilus-search-engine-tracker.c b/libnautilus-private/nautilus-search-engine-tracker.c
Tomas Bzatek 94fa224
index 3d2b465..eec8d74 100644
Tomas Bzatek 94fa224
--- a/libnautilus-private/nautilus-search-engine-tracker.c
Tomas Bzatek 94fa224
+++ b/libnautilus-private/nautilus-search-engine-tracker.c
Tomas Bzatek 94fa224
@@ -97,7 +97,7 @@ search_callback (char **results, GError *error, gpointer user_data)
Tomas Bzatek 94fa224
 		char *uri;
Tomas Bzatek 94fa224
 
Tomas Bzatek 94fa224
 #ifdef HAVE_TRACKER_0_7
Tomas Bzatek 94fa224
-		uri = *results_p;
Tomas Bzatek 94fa224
+		uri = g_strdup ((char *)*results_p);
Tomas Bzatek 94fa224
 #else
Tomas Bzatek 94fa224
 		uri = g_filename_to_uri ((char *)*results_p, NULL, NULL);
Tomas Bzatek 94fa224
 #endif
Tomas Bzatek 94fa224
@@ -109,12 +109,7 @@ search_callback (char **results, GError *error, gpointer user_data)
Tomas Bzatek 94fa224
 	nautilus_search_engine_hits_added (NAUTILUS_SEARCH_ENGINE (tracker), hit_uris);
Tomas Bzatek 94fa224
 	nautilus_search_engine_finished (NAUTILUS_SEARCH_ENGINE (tracker));
Tomas Bzatek 94fa224
 	g_strfreev  (results);
Tomas Bzatek 94fa224
-#ifdef HAVE_TRACKER_0_7
Tomas Bzatek 94fa224
-	g_list_free (hit_uris);
Tomas Bzatek 94fa224
-#else
Tomas Bzatek 94fa224
 	eel_g_list_free_deep (hit_uris);
Tomas Bzatek 94fa224
-#endif
Tomas Bzatek 94fa224
-
Tomas Bzatek 94fa224
 }
Tomas Bzatek 94fa224
 
Tomas Bzatek 94fa224
 
Tomas Bzatek 94fa224
@@ -145,11 +140,11 @@ nautilus_search_engine_tracker_start (NautilusSearchEngine *engine)
Tomas Bzatek 94fa224
 
Tomas Bzatek 94fa224
 	if (location_uri) {
Tomas Bzatek 94fa224
 #ifdef HAVE_TRACKER_0_7
Tomas Bzatek 94fa224
-		location = location_uri;
Tomas Bzatek 94fa224
+		location = g_strdup (location_uri);
Tomas Bzatek 94fa224
 #else
Tomas Bzatek 94fa224
 		location = g_filename_from_uri (location_uri, NULL, NULL);
Tomas Bzatek 94fa224
-		g_free (location_uri);
Tomas Bzatek 94fa224
 #endif
Tomas Bzatek 94fa224
+		g_free (location_uri);
Tomas Bzatek 94fa224
 	} else {
Tomas Bzatek 94fa224
 		location = NULL;
Tomas Bzatek 94fa224
 	}
Tomas Bzatek 94fa224
@@ -279,14 +274,16 @@ nautilus_search_engine_tracker_new (void)
Tomas Bzatek 94fa224
 #ifdef HAVE_TRACKER_0_7
Tomas Bzatek 94fa224
 	tracker_client = tracker_connect (FALSE, -1);
Tomas Bzatek 94fa224
 #else
Tomas Bzatek 94fa224
-	GError *err = NULL;
Tomas Bzatek 94fa224
-
Tomas Bzatek 94fa224
-	tracker_client =  tracker_connect (FALSE);
Tomas Bzatek 94fa224
+	tracker_client = tracker_connect (FALSE);
Tomas Bzatek 94fa224
+#endif
Tomas Bzatek 94fa224
 
Tomas Bzatek 94fa224
 	if (!tracker_client) {
Tomas Bzatek 94fa224
 		return NULL;
Tomas Bzatek 94fa224
 	}
Tomas Bzatek 94fa224
 
Tomas Bzatek 94fa224
+#ifndef HAVE_TRACKER_0_7
Tomas Bzatek 94fa224
+	GError *err = NULL;
Tomas Bzatek 94fa224
+
Tomas Bzatek 94fa224
 	tracker_get_version (tracker_client, &err;;
Tomas Bzatek 94fa224
 
Tomas Bzatek 94fa224
 	if (err != NULL) {
Tomas Bzatek 94fa224
-- 
Tomas Bzatek 94fa224
1.6.5.rc2
Tomas Bzatek 94fa224