tracker r2736 - in trunk: . src/tracker-indexer



Author: carlosg
Date: Fri Dec 19 13:17:12 2008
New Revision: 2736
URL: http://svn.gnome.org/viewvc/tracker?rev=2736&view=rev

Log:
2008-12-19  Carlos Garnacho  <carlos imendio com>

        * src/tracker-indexer/tracker-indexer.c (item_remove): Inconditionally
        check the service type in the database for deleted files, since files
        could not end always with the service type specified by the module
        definition file, and there's no way to requery it for a deleted file.

        This for example allows setting the correct services in the
        ServiceStatisticsUpdated signal for any special (image, music, ...)
        file that was indexed through the files module.

        Fixes NB #95215.

Modified:
   trunk/ChangeLog
   trunk/src/tracker-indexer/tracker-indexer.c

Modified: trunk/src/tracker-indexer/tracker-indexer.c
==============================================================================
--- trunk/src/tracker-indexer/tracker-indexer.c	(original)
+++ trunk/src/tracker-indexer/tracker-indexer.c	Fri Dec 19 13:17:12 2008
@@ -1660,28 +1660,19 @@
 		 dirname, 
 		 basename);
 
-	service_type = tracker_module_config_get_index_service (info->module->name);
-
-	if (!service_type || !service_type[0]) {
-		const gchar *name;
-
-		/* The file is not anymore in the filesystem. Obtain
-		 * the service type from the DB.
-		 */
-		service_type_id = tracker_data_query_service_type_id (dirname, basename);
-
-		if (service_type_id == 0) {
-			/* File didn't exist, nothing to delete */
-			return;
-		}
+	/* The file is not anymore in the filesystem. Obtain
+	 * the service type from the DB.
+	 */
+	service_type_id = tracker_data_query_service_type_id (dirname, basename);
 
-		name = tracker_ontology_get_service_by_id (service_type_id);
-		service = tracker_ontology_get_service_by_name (name);
-	} else {
-		service = tracker_ontology_get_service_by_name (service_type);
-		service_type_id = tracker_service_get_id (service);
+	if (service_type_id == 0) {
+		/* File didn't exist, nothing to delete */
+		return;
 	}
 
+	service_type = tracker_ontology_get_service_by_id (service_type_id);
+	service = tracker_ontology_get_service_by_name (service_type);
+
 	tracker_data_query_service_exists (service, dirname, basename, &service_id, NULL);
 
 	if (service_id < 1) {



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