rpms/tracker/F-7 tracker-assorted_fixes.patch, NONE, 1.1 tracker.spec, 1.17, 1.18 tracker-post_0.6.4_fixes.patch, 1.1, NONE

Deji Akingunola (deji) fedora-extras-commits at redhat.com
Sun Jan 27 22:39:15 UTC 2008


Author: deji

Update of /cvs/extras/rpms/tracker/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv19839

Modified Files:
	tracker.spec 
Added Files:
	tracker-assorted_fixes.patch 
Removed Files:
	tracker-post_0.6.4_fixes.patch 
Log Message:
* Sun Jan 27 2008 Deji Akingunola <dakingun at gmail.com> - 0.6.4-4
- Backport assorted fixes from upstream svn (Fix Fedora bug 426060)
- Now require the externally packaged o3read to provide o3totxt


tracker-assorted_fixes.patch:

--- NEW FILE tracker-assorted_fixes.patch ---
--- src/trackerd/tracker-indexer.c	2007/12/10 23:37:31	1068
+++ src/trackerd/tracker-indexer.c	2007/12/11 21:16:02	1076
@@ -215,7 +215,7 @@
 	}
 
 	if (!word_index) {
-		tracker_log ("%s index was not closed properly and caused error %s- attempting repair", name, dperrmsg (dpecode));
+		tracker_error ("%s index was not closed properly and caused error %s- attempting repair", name, dperrmsg (dpecode));
 		if (dprepair (name)) {
 			word_index = dpopen (name, DP_OWRITER | DP_OCREAT | DP_ONOLCK, tracker->min_index_bucket_count);
 		} else {
@@ -228,6 +228,16 @@
 }
 
 
+static inline char *
+get_index_file (const char *name)
+{
+	char *word_dir;
+
+	word_dir = g_build_filename (tracker->data_dir, name, NULL);
+
+	return word_dir;
+}
+
 Indexer *
 tracker_indexer_open (const gchar *name)
 {
@@ -237,7 +247,7 @@
 
 	if (!name) return NULL;
 
-	word_dir = g_build_filename (tracker->data_dir, name, NULL);
+	word_dir = get_index_file (name);
 
 	word_index = open_index (word_dir);
 	
@@ -504,7 +514,7 @@
 }
 
 static void
-move_index (Indexer *src_index, Indexer *dest_index)
+move_index (Indexer *src_index, Indexer *dest_index, const char *fname)
 {
 
 	if (!src_index || !dest_index) {
@@ -515,8 +525,6 @@
 	/* remove existing main index */
 	g_mutex_lock (dest_index->word_mutex);
 
-	char *fname = dpname (dest_index->word_index);
-
 	dpclose (dest_index->word_index);
 
 	dpremove (fname);
@@ -526,7 +534,9 @@
 	tracker_indexer_close (src_index);
 		
 	/* rename and reopen final index as main index */
-			
+		
+	tracker_log ("renaming %s to %s", final_name, fname);
+	
 	rename (final_name, fname);
 
 	dest_index->word_index = open_index (fname);	
@@ -535,7 +545,6 @@
 		tracker_error ("index creation failure for %s from %s", fname, final_name);
 	}
 
-	g_free (fname);
 	g_free (final_name);		
 
 	g_mutex_unlock (dest_index->word_mutex);
@@ -556,7 +565,7 @@
 	if (type == INDEX_TYPE_FILES) {
 
 		g_return_if_fail (tracker->file_index);
-
+		
 		prefix = "file-index.tmp.";
 
 		index_list = g_slist_prepend (index_list, tracker->file_index);
@@ -571,7 +580,7 @@
 		prefix = "email-index.tmp.";
 
 		g_return_if_fail (tracker->email_index);
-
+		
 		index_list = g_slist_prepend (index_list, tracker->email_index);
 
 		char *tmp = g_build_filename (tracker->data_dir, "email-index-final", NULL);
@@ -748,6 +757,9 @@
 			g_free (str);
 		}
 
+
+		
+
 		/* dont free last entry as that is the main index */
 		if (lst->next) {
 
@@ -757,7 +769,17 @@
 
 
 		} else {
-			move_index (final_index, index);
+			if (type == INDEX_TYPE_FILES) {
+
+				char *fname = get_index_file ("file-index.db");
+				move_index (final_index, tracker->file_index, fname);	
+				g_free (fname);
+
+			} else {
+				char *fname = get_index_file ("email-index.db");
+				move_index (final_index, tracker->email_index, fname);
+				g_free (fname);
+			}
 		}		
 	}
 	
--- src/trackerd/tracker-utils.c	2007/12/11 18:29:27	1075
+++ src/trackerd/tracker-utils.c	2007/12/13 23:55:10	1079
@@ -3491,11 +3491,13 @@
 	/* logging is thread safe */
 	static size_t   log_size = 0;
 
-	if (! message)
+	if (!message)
 		return;
 
 	g_print ("%s\n", message);
 
+	if (!tracker->log_file) return;
+
 	/* ensure file logging is thread safe */
 	g_mutex_lock (tracker->log_access_mutex);
 
--- src/trackerd/trackerd.c	2007/12/11 02:57:07	1070
+++ src/trackerd/trackerd.c	2007/12/13 23:55:10	1079
@@ -618,19 +618,13 @@
 static void
 signal_handler (gint signo)
 {
-	if (!tracker->is_running) {
-		return;
-	}
-
 	static gboolean in_loop = FALSE;
 
-  	/* avoid re-entrant signals handler calls */
-	if (in_loop && signo != SIGSEGV) {
-		return;
+  	/* die if we get re-entrant signals handler calls */
+	if (in_loop) {
+		exit (EXIT_FAILURE);
 	}
 
-  	in_loop = TRUE;
-
   	switch (signo) {
 
   		case SIGSEGV:
@@ -646,6 +640,8 @@
 		case SIGTERM:
 		case SIGINT:
 
+		  	in_loop = TRUE;
+
 			tracker->is_running = FALSE;
 			tracker_end_watching ();
 
@@ -660,8 +656,7 @@
 			if (tracker->log_file && g_strsignal (signo)) {
 	   			tracker_log ("Received signal %s ", g_strsignal (signo));
 			}
-			in_loop = FALSE;
-    			break;
+			break;
   	}
 }
 
@@ -2422,6 +2417,14 @@
 	if (!g_thread_supported ())
 		g_thread_init (NULL);
 
+	dbus_g_thread_init ();
+
+	tracker = g_new0 (Tracker, 1);
+
+	tracker->dbus_con = tracker_dbus_init ();
+	
+	add_local_dbus_connection_monitoring (tracker->dbus_con);
+
 	setlocale (LC_ALL, "");
 
 	bindtextdomain (GETTEXT_PACKAGE, TRACKER_LOCALEDIR);
@@ -2478,20 +2481,14 @@
 	sigaction (SIGINT,  &act, NULL);
 #endif
 
-	dbus_g_thread_init ();
+	
 
-	tracker = g_new0 (Tracker, 1);
+	
 
 	tracker->status = STATUS_INIT;
 
  	tracker->is_running = FALSE;
 
-	tracker->log_file = g_build_filename (tracker->root_dir, "tracker.log", NULL);
-
-	tracker->dbus_con = tracker_dbus_init ();
-	
-	add_local_dbus_connection_monitoring (tracker->dbus_con);
-
 	/* Make a temporary directory for Tracker into g_get_tmp_dir() directory */
 	gchar *tmp_dir;
 
@@ -2505,6 +2502,16 @@
 	tracker->config_dir = g_strdup (g_get_user_config_dir ());
 	tracker->user_data_dir = g_build_filename (tracker->root_dir, "data", NULL);
 
+	tracker->log_file = g_build_filename (tracker->root_dir, "tracker.log", NULL);
+
+	/* reset log file */
+	tracker_unlink (tracker->log_file);
+
+	tracker_log ("starting log");
+
+	
+
+
 	g_free (tmp_dir);
 
 	/* remove an existing one */
@@ -2636,9 +2643,7 @@
 	ioprio ();
 #endif
 
-	/* reset log file */
-	tracker_unlink (tracker->log_file);
-
+	
 	/* deal with config options with defaults, config file and option params */
 	set_defaults ();
 


Index: tracker.spec
===================================================================
RCS file: /cvs/extras/rpms/tracker/F-7/tracker.spec,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- tracker.spec	18 Dec 2007 04:44:36 -0000	1.17
+++ tracker.spec	27 Jan 2008 22:38:34 -0000	1.18
@@ -1,18 +1,19 @@
 Summary:	An object database, tag/metadata database, search tool and indexer
 Name:		tracker
 Version:	0.6.4
-Release:	1%{?dist}.1
+Release:	4%{?dist}.1
 License:	GPLv2+
 Group:		Applications/System
 URL:		http://www.gnome.org/~jamiemcc/tracker/
 Source0:	http://www.gnome.org/~jamiemcc/tracker/%{name}-%{version}.tar.bz2
-Patch0:		tracker-post_0.6.4_fixes.patch
+Patch0:		tracker-assorted_fixes.patch
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 BuildRequires:	gmime-devel, poppler-devel, gettext
 BuildRequires:	gnome-desktop-devel, gamin-devel, libnotify-devel
 BuildRequires:	libexif-devel, libgsf-devel, gstreamer-devel, exempi-devel
 BuildRequires:	desktop-file-utils, intltool, deskbar-applet
 BuildRequires:	sqlite-devel, qdbm-devel, pygtk2-devel
+Requires:	o3read
 
 %description
 Tracker is a powerful desktop-neutral first class object database,
@@ -51,7 +52,7 @@
 
 %prep
 %setup -q
-#%patch0 -p0 -b .fix
+%patch0 -p0 -b .fix
 
 %define deskbar_applet_ver %(pkg-config --modversion deskbar-applet)
 %if "%deskbar_applet_ver" >= "2.19.4"
@@ -110,11 +111,11 @@
 %files -f %{name}.lang
 %defattr(-, root, root, -)
 %doc AUTHORS ChangeLog COPYING NEWS README
-%{_bindir}/o3totxt
 %{_bindir}/tracker*
 %exclude %{_bindir}/tracker-preferences
 %exclude %{_bindir}/tracker-search-tool
 %exclude %{_bindir}/tracker-thumbnailer
+%exclude %{_bindir}/o3totxt
 %{_datadir}/tracker/
 %{_datadir}/dbus-1/services/tracker.service
 %{_libdir}/*.so.*
@@ -141,6 +142,10 @@
 %{_sysconfdir}/xdg/autostart/tracker-applet.desktop
 
 %changelog
+* Sun Jan 27 2008 Deji Akingunola <dakingun at gmail.com> - 0.6.4-4
+- Backport assorted fixes from upstream svn (Fix Fedora bug 426060)
+- Now require the externally packaged o3read to provide o3totxt
+
 * Mon Dec 17 2007 Deji Akingunola <dakingun at gmail.com> - 0.6.4-1
 - Undo the crasher fix, it's causing more issues than it fixes (bug #426060) 
 


--- tracker-post_0.6.4_fixes.patch DELETED ---




More information about the fedora-extras-commits mailing list