tracker r2679 - in branches/turtle/src: libtracker-common libtracker-data tracker-indexer trackerd



Author: pvanhoof
Date: Tue Dec  9 14:15:51 2008
New Revision: 2679
URL: http://svn.gnome.org/viewvc/tracker?rev=2679&view=rev

Log:
Fixes after Martyn's comments

Modified:
   branches/turtle/src/libtracker-common/tracker-hal.c
   branches/turtle/src/libtracker-data/tracker-data-metadata.c
   branches/turtle/src/libtracker-data/tracker-data-metadata.h
   branches/turtle/src/libtracker-data/tracker-data-update.c
   branches/turtle/src/libtracker-data/tracker-data-update.h
   branches/turtle/src/tracker-indexer/tracker-indexer.c
   branches/turtle/src/tracker-indexer/tracker-indexer.h
   branches/turtle/src/tracker-indexer/tracker-removable-device.c
   branches/turtle/src/trackerd/tracker-main.c

Modified: branches/turtle/src/libtracker-common/tracker-hal.c
==============================================================================
--- branches/turtle/src/libtracker-common/tracker-hal.c	(original)
+++ branches/turtle/src/libtracker-common/tracker-hal.c	Tue Dec  9 14:15:51 2008
@@ -1057,7 +1057,7 @@
 	gboolean       is_mounted;
 
 	gr = (GetRoots*) user_data;
-	udi = (const gchar*) key;
+	udi = key;
 
 	volume = libhal_volume_from_udi (gr->context, udi);
 	if (!volume) {
@@ -1139,14 +1139,14 @@
  * tracker_hal_path_is_on_removable_device:
  * @hal: A #TrackerHal
  * @path: a path
- * @mount_mount: (out): if @path is on a removable device, the mount point will
- * be filled in here
- * @available: (out): if @path is on a removable device, this will be set to 
+ * @mount_mount: if @path is on a removable device, the mount point will
+ * be filled in here. You must free the returned result
+ * @available: if @path is on a removable device, this will be set to 
  * TRUE in case the file is available right now
  *
  * Returns Whether or not @path is on a known removable device
  *
- * Returns: Whether or not @path is on a known removable device
+ * Returns: TRUE if @path on a known removable device, FALSE otherwise
  **/
 gboolean
 tracker_hal_path_is_on_removable_device (TrackerHal  *hal,
@@ -1186,17 +1186,17 @@
 
 		mp = libhal_volume_get_mount_point (volume);
 
-		if (mp && strcmp (mp, path) != 0) {
-		  if (g_strrstr (path, mp)) {
-			found = TRUE;
-
-			if (mount_point)
-				*mount_point = g_strdup (mp);
-
-			if (available)
-				*available = libhal_volume_is_mounted (volume);
-			break;
-		  }
+		if (g_strcmp0 (mp, path) != 0) {
+			if (g_strrstr (path, mp)) {
+				found = TRUE;
+
+				if (mount_point)
+					*mount_point = g_strdup (mp);
+
+				if (available)
+					*available = libhal_volume_is_mounted (volume);
+				break;
+			}
 		}
 
 		libhal_volume_free (volume);

Modified: branches/turtle/src/libtracker-data/tracker-data-metadata.c
==============================================================================
--- branches/turtle/src/libtracker-data/tracker-data-metadata.c	(original)
+++ branches/turtle/src/libtracker-data/tracker-data-metadata.c	Tue Dec  9 14:15:51 2008
@@ -97,19 +97,18 @@
 void
 tracker_data_metadata_insert (TrackerDataMetadata *metadata,
 			      const gchar	  *field_name,
-			      gchar		  *value)
+			      const gchar         *value)
 {
 	TrackerField *field;
-	gchar        *old_value;
+	gchar *old_value;
 
-	field = tracker_ontology_get_field_by_name (field_name);
+	g_return_if_fail (metadata != NULL);
+	g_return_if_fail (field_name != NULL);
+	g_return_if_fail (value != NULL);
 
-	if (!field) {
-		g_warning ("Field name '%s' has isn't described in the ontology", field_name);
-		g_free (value);
-		return;
-	}
+	field = tracker_ontology_get_field_by_name (field_name);
 
+	g_return_if_fail (TRACKER_IS_FIELD (field));
 	g_return_if_fail (tracker_field_get_multiple_values (field) == FALSE);
 
 	old_value = g_hash_table_lookup (metadata->table, field);
@@ -117,11 +116,12 @@
 
 	g_hash_table_replace (metadata->table,
 			      g_object_ref (field),
-			      value);
+			      g_strdup (value));
 }
 
 
 
+
 /**
  * tracker_data_metadata_append_to_list:
  * @metadata: A #TrackerDataMetadata
@@ -133,7 +133,7 @@
 void
 tracker_data_metadata_append_to_list (TrackerDataMetadata *metadata,
 				      const gchar	  *field_name,
-				      gchar		  *value)
+				      const gchar	  *value)
 {
 	TrackerField *field;
 	GList        *values;
@@ -142,7 +142,6 @@
 
 	if (!field) {
 		g_warning ("Field name '%s' has isn't described in the ontology", field_name);
-		g_free (value);
 		return;
 	}
 
@@ -150,7 +149,7 @@
 
 	values = g_hash_table_lookup (metadata->table, field);
 
-	values = g_list_append (values, value);
+	values = g_list_append (values, (gpointer) value);
 
 	g_hash_table_replace (metadata->table,
 			      g_object_ref (field),
@@ -173,17 +172,19 @@
 	TrackerField *field;
 	GList        *old_values;
 
-	field = tracker_ontology_get_field_by_name (field_name);
+	g_return_if_fail (metadata != NULL);
+	g_return_if_fail (field_name != NULL);
 
-	if (!field) {
-		g_warning ("Field name '%s' has isn't described in the ontology", field_name);
-		g_list_foreach (list, (GFunc) g_free, NULL);
-		g_list_free (list);
+	if (!list) {
 		return;
 	}
 
+	field = tracker_ontology_get_field_by_name (field_name);
+
+	g_return_if_fail (TRACKER_IS_FIELD (field));
 	g_return_if_fail (tracker_field_get_multiple_values (field) == TRUE);
 
+	/* TODO margetask: replace with a replace, but look at trunk's impl. */
 	g_hash_table_insert (metadata->table,
 			     g_object_ref (field),
 			     list);

Modified: branches/turtle/src/libtracker-data/tracker-data-metadata.h
==============================================================================
--- branches/turtle/src/libtracker-data/tracker-data-metadata.h	(original)
+++ branches/turtle/src/libtracker-data/tracker-data-metadata.h	Tue Dec  9 14:15:51 2008
@@ -39,13 +39,13 @@
 void                  tracker_data_metadata_free           (TrackerDataMetadata        *metadata);
 void                  tracker_data_metadata_insert         (TrackerDataMetadata        *metadata,
 							    const gchar                *field_name,
-							    gchar                      *value);
+							    const gchar                *value);
 void                  tracker_data_metadata_insert_values  (TrackerDataMetadata        *metadata,
 							    const gchar                *field_name,
 							    GList                      *list);
 void                  tracker_data_metadata_append_to_list (TrackerDataMetadata        *metadata,
-							    const gchar	               *field_name,
-							    gchar                      *value);
+							    const gchar                *field_name,
+							    const gchar                *value);
 G_CONST_RETURN gchar *tracker_data_metadata_lookup         (TrackerDataMetadata        *metadata,
 							    const gchar                *field_name);
 G_CONST_RETURN GList *tracker_data_metadata_lookup_values  (TrackerDataMetadata        *metadata,

Modified: branches/turtle/src/libtracker-data/tracker-data-update.c
==============================================================================
--- branches/turtle/src/libtracker-data/tracker-data-update.c	(original)
+++ branches/turtle/src/libtracker-data/tracker-data-update.c	Tue Dec  9 14:15:51 2008
@@ -33,6 +33,16 @@
 #include "tracker-data-manager.h"
 #include "tracker-data-update.h"
 
+typedef struct {
+	TrackerService *service;
+	guint32 iid_value;
+	TrackerLanguage *language;
+	TrackerConfig *config;
+} ForeachInMetadataInfo;
+
+static TrackerConfig   *config = NULL;
+static TrackerLanguage *language = NULL;
+
 guint32
 tracker_data_update_get_new_service_id (TrackerDBInterface *iface)
 {
@@ -575,12 +585,17 @@
 /* TODO: URI branch path -> uri */
 
 void
-tracker_data_delete_service (const gchar         *path,
-			     const gchar         *rdf_type)
+tracker_data_delete_service (const gchar *path,
+			     const gchar *rdf_type)
 {
-	TrackerService      *service;
-	const gchar         *service_type; 
-	guint32              service_id;
+	TrackerService *service;
+	const gchar    *service_type; 
+	guint32         service_id;
+
+	g_return_if_fail (path != NULL);
+
+	if (!rdf_type)
+		return;
 
 	service = tracker_ontology_get_service_by_name (rdf_type);
 	service_type = tracker_service_get_name (service);
@@ -598,16 +613,10 @@
 
 /* TODO: URI branch path -> uri */
 
-typedef struct {
-	TrackerService *service;
-	guint32 iid_value;
-	TrackerLanguage *language;
-	TrackerConfig *config;
-} ForeachInMetadataInfo;
-
-
 static void
-set_metadata (TrackerField *field, gpointer value, ForeachInMetadataInfo *info)
+set_metadata (TrackerField *field, 
+	      gpointer value, 
+	      ForeachInMetadataInfo *info)
 {
 	TrackerDBIndex *index;
 	gchar *parsed_value;
@@ -673,22 +682,15 @@
 	} else {
 		GList *list;
 
-		list = value;
-
-		while (list) {
+		for (list = value; list; list = list->next)
 			set_metadata (field, list->data, user_data);
-			list = list->next;
-		}
-	}
 
+	}
 }
 
-static TrackerConfig *config = NULL;
-static TrackerLanguage *language = NULL;
-
 
 void
-tracker_data_start_turtle_import (void)
+tracker_data_turtle_import_start (void)
 {
 	if (!config)
 		config = tracker_config_new ();
@@ -697,7 +699,7 @@
 }
 
 void
-tracker_data_stop_turtle_import (void)
+tracker_data_turtle_import_stop (void)
 {
 	g_object_unref (language);
 	g_object_unref (config);
@@ -722,6 +724,9 @@
 	gchar               *dirname;
 	const gchar         *basename;
 
+	g_return_if_fail (path != NULL);
+	g_return_if_fail (metadata != NULL);
+
 	/* When merging from the decomposed branch to trunk then pick the version
 	 * in the decomposed branch for this function. However, carefully 
 	 * compare the features, as this version is more recent and has 
@@ -759,16 +764,16 @@
 							 dirname, basename);
 
 	if (error) {
-		#ifdef TURTLE_DEBUG
-		g_print ("Q ERROR: %s\n", error->message);
-		#endif /* TURTLE_DEBUG */
+#ifdef TURTLE_DEBUG
+		g_debug ("Q ERROR: %s\n", error->message);
+#endif /* TURTLE_DEBUG */
 		g_error_free (error);
 	}
 
 	if (result_set) {
-		GValue         id_value = { 0, };
-		GValue         is_value = { 0, };
-		gint           iid_value, iis_value;
+		GValue id_value = { 0, };
+		GValue is_value = { 0, };
+		gint   iid_value, iis_value;
 
 		_tracker_db_result_set_get_value (result_set, 0, &id_value);
 		iid_value = g_value_get_int (&id_value);
@@ -781,8 +786,8 @@
 			info->service = service;
 			info->iid_value = iid_value;
 
-			info->config = config?g_object_ref (config):NULL;
-			info->language = language?g_object_ref (language):NULL;
+			info->config = config ? g_object_ref (config) : NULL;
+			info->language = language ? g_object_ref (language) : NULL;
 
 			tracker_data_metadata_foreach (metadata, 
 						       foreach_in_metadata_set_metadata,

Modified: branches/turtle/src/libtracker-data/tracker-data-update.h
==============================================================================
--- branches/turtle/src/libtracker-data/tracker-data-update.h	(original)
+++ branches/turtle/src/libtracker-data/tracker-data-update.h	Tue Dec  9 14:15:51 2008
@@ -58,8 +58,8 @@
 							 TrackerDataMetadata *metadata);
 void     tracker_data_delete_service                    (const gchar         *path,
 							 const gchar         *rdf_type);
-void     tracker_data_start_turtle_import               (void);
-void     tracker_data_stop_turtle_import                (void);
+void     tracker_data_turtle_import_start               (void);
+void     tracker_data_turtle_import_stop                (void);
 
 /* Metadata */
 void     tracker_data_update_set_metadata               (TrackerService      *service,

Modified: branches/turtle/src/tracker-indexer/tracker-indexer.c
==============================================================================
--- branches/turtle/src/tracker-indexer/tracker-indexer.c	(original)
+++ branches/turtle/src/tracker-indexer/tracker-indexer.c	Tue Dec  9 14:15:51 2008
@@ -384,7 +384,7 @@
 
 
 void 
-tracker_indexer_commit_transaction (TrackerIndexer *indexer)
+tracker_indexer_transaction_commit (TrackerIndexer *indexer)
 {
 	stop_transaction (indexer);
 	tracker_indexer_set_running (indexer, TRUE);
@@ -392,7 +392,7 @@
 }
 
 void
-tracker_indexer_open_transaction   (TrackerIndexer *indexer)
+tracker_indexer_transaction_open (TrackerIndexer *indexer)
 {
 	tracker_indexer_set_running (indexer, FALSE);
 	start_transaction (indexer);
@@ -1418,7 +1418,6 @@
 		}
 
 		g_free (mount_point);
-		mount_point = NULL;
 		g_free (service_path);
 
 		/* Take the old text -> the new one, calculate
@@ -1461,6 +1460,8 @@
 				     basename, 
 				     NULL);
 
+	mount_point = NULL;
+
 	if (tracker_hal_path_is_on_removable_device (indexer->private->hal,
 						     service_path, 
 						     &mount_point,
@@ -1474,7 +1475,6 @@
 	}
 
 	g_free (mount_point);
-	mount_point = NULL;
 	g_free (service_path);
 
 	text = tracker_module_file_get_text (info->module_file);
@@ -2978,11 +2978,11 @@
 	g_return_if_fail (TRACKER_IS_INDEXER (indexer));
 
 	g_debug ("Turtle loading <%s, %s, %s>",
-                 (gchar *)triple->subject, 
-                 (gchar *)triple->predicate, 
-                 (gchar *)triple->object);
-	
-	values[0] = g_strdup (triple->object);
+		 (gchar *)triple->subject, 
+		 (gchar *)triple->predicate, 
+		 (gchar *)triple->object);
+
+	values[0] = triple->object;
 	values[1] = NULL;
 
 	handle_metadata_add (indexer, "Files", triple->subject, triple->predicate, values, &error);
@@ -2992,7 +2992,6 @@
 		g_error_free (error);
 	}
 
-	g_free (values[0]);
 }
 
 void
@@ -3003,9 +3002,10 @@
 {
 	guint request_id;
 
+	request_id = tracker_dbus_get_next_request_id ();
+
 	tracker_dbus_async_return_if_fail (TRACKER_IS_INDEXER (indexer), context);
 
-	request_id = tracker_dbus_get_next_request_id ();
 	tracker_dbus_request_new (request_id,
 				  "DBus request to restore backup data from '%s'",
 				  backup_file);

Modified: branches/turtle/src/tracker-indexer/tracker-indexer.h
==============================================================================
--- branches/turtle/src/tracker-indexer/tracker-indexer.h	(original)
+++ branches/turtle/src/tracker-indexer/tracker-indexer.h	Tue Dec  9 14:15:51 2008
@@ -83,8 +83,8 @@
 void            tracker_indexer_process_all         (TrackerIndexer         *indexer);
 void            tracker_indexer_process_modules     (TrackerIndexer         *indexer,
 						     gchar                 **modules);
-void		tracker_indexer_commit_transaction  (TrackerIndexer         *indexer);
-void		tracker_indexer_open_transaction    (TrackerIndexer         *indexer);
+void		tracker_indexer_transaction_commit  (TrackerIndexer         *indexer);
+void		tracker_indexer_transaction_open    (TrackerIndexer         *indexer);
 
 /* DBus methods */
 void            tracker_indexer_pause               (TrackerIndexer         *indexer,

Modified: branches/turtle/src/tracker-indexer/tracker-removable-device.c
==============================================================================
--- branches/turtle/src/tracker-indexer/tracker-removable-device.c	(original)
+++ branches/turtle/src/tracker-indexer/tracker-removable-device.c	Tue Dec  9 14:15:51 2008
@@ -135,9 +135,9 @@
 	 * moment */
 
 	if (may_flush && info->amount > TRANSACTION_MAX) {
-		tracker_indexer_commit_transaction (info->indexer);
+		tracker_indexer_transaction_commit (info->indexer);
 		g_main_context_iteration (NULL, FALSE);
-		tracker_indexer_open_transaction (info->indexer);
+		tracker_indexer_transaction_open (info->indexer);
 		info->amount = 0;
 	}
 }
@@ -184,9 +184,15 @@
 								      predicate,
 								      g_strdup (triple->object));
 				} else {
-					tracker_data_metadata_append_to_list (info->metadata, 
-									      predicate,
-									      g_strdup (triple->object));
+					TrackerField *field;
+
+					field = tracker_ontology_get_field_by_name (predicate);
+
+					if (field) {
+						tracker_data_metadata_append_to_list (info->metadata, 
+										      predicate,
+										      triple->object);
+					}
 				}
 			}
 		}
@@ -290,9 +296,9 @@
 		/* We need to open the transaction, during the parsing will the
 		 * transaction be committed and reopened */
 
-		tracker_indexer_open_transaction (info->indexer);
+		tracker_indexer_transaction_open (info->indexer);
 
-		tracker_data_start_turtle_import ();
+		tracker_data_turtle_import_start ();
 
 		base_uri = g_strdup_printf ("file://%s/", mount_point);
 		tracker_turtle_process (file, base_uri, consume_triple_storer, info);
@@ -307,9 +313,9 @@
 		/* We will (always) be left in open state, so we commit the 
 		 * last opened transaction */
 
-		tracker_data_stop_turtle_import ();
+		tracker_data_turtle_import_stop ();
 
-		tracker_indexer_commit_transaction (info->indexer);
+		tracker_indexer_transaction_commit (info->indexer);
 
 		g_free (info->base);
 		g_object_unref (info->indexer);

Modified: branches/turtle/src/trackerd/tracker-main.c
==============================================================================
--- branches/turtle/src/trackerd/tracker-main.c	(original)
+++ branches/turtle/src/trackerd/tracker-main.c	Tue Dec  9 14:15:51 2008
@@ -748,7 +748,7 @@
 }
 
 static gchar *
-get_turtle_userdata_backup_filename () 
+get_turtle_userdata_backup_filename (void) 
 {
 	TrackerMainPrivate *private;
 



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