[tracker/tracker-store-queue] Bugfix setting tags of Evolution E-mail



commit d9b29d008b8a7b005eaad3b56c38043ba2320b4c
Author: Philip Van Hoof <philip codeminded be>
Date:   Tue May 26 15:14:24 2009 +0200

    Bugfix setting tags of Evolution E-mail
    
    I also added assertions to avoid such bugs in future
---
 .../evolution/tracker-evolution-registrar.c        |   35 +++++++++++++-------
 src/tracker-store/tracker-store.c                  |   35 ++++++++++++++-----
 2 files changed, 49 insertions(+), 21 deletions(-)

diff --git a/src/plugins/evolution/tracker-evolution-registrar.c b/src/plugins/evolution/tracker-evolution-registrar.c
index ca76beb..69afe8f 100644
--- a/src/plugins/evolution/tracker-evolution-registrar.c
+++ b/src/plugins/evolution/tracker-evolution-registrar.c
@@ -407,22 +407,33 @@ perform_set (TrackerEvolutionRegistrar *object,
 			if (value) {
 				*value = '\0';
 				value++;
-			}
 
-			data_insert_statement (object, ":1", RDF_PREFIX "type",
-			                       NAO_PREFIX "Property");
+				data_insert_statement (object, ":1", RDF_PREFIX "type",
+				                       NAO_PREFIX "Property");
+
+				data_insert_statement (object, ":1", 
+				                       NAO_PREFIX "propertyName",
+				                       key);
+
+				data_insert_statement (object, ":1", 
+				                       NAO_PREFIX "propertyValue",
+				                       value);
 
-			data_insert_statement (object, ":1", 
-			                       NAO_PREFIX "propertyName",
-			                       key);
+				data_insert_statement (object, subject, 
+				                       NAO_PREFIX "hasProperty", 
+				                       ":1");
+			} else {
+				data_insert_statement (object, ":1", RDF_PREFIX "type",
+				                       NAO_PREFIX "Tag");
 
-			data_insert_statement (object, ":1", 
-			                       NAO_PREFIX "propertyValue",
-			                       value);
+				data_insert_statement (object, ":1", 
+				                       NAO_PREFIX "prefLabel",
+				                       key);
 
-			data_insert_statement (object, subject, 
-			                       NAO_PREFIX "hasProperty", 
-			                       ":1");
+				data_insert_statement (object, subject, 
+				                       NAO_PREFIX "hasTag", 
+				                       ":1");
+			}
 
 			g_free (key);
 		}
diff --git a/src/tracker-store/tracker-store.c b/src/tracker-store/tracker-store.c
index eb3521b..940cace 100644
--- a/src/tracker-store/tracker-store.c
+++ b/src/tracker-store/tracker-store.c
@@ -316,7 +316,6 @@ tracker_store_queue_commit (TrackerStoreCommitCallback callback,
 	private = g_static_private_get (&private_key);
 	g_return_if_fail (private != NULL);
 
-
 	task = g_slice_new0 (TrackerStoreTask);
 	task->type = TRACKER_STORE_TASK_TYPE_COMMIT;
 	task->user_data = user_data;
@@ -333,13 +332,15 @@ tracker_store_queue_commit (TrackerStoreCommitCallback callback,
 
 void
 tracker_store_queue_sparql_update (const gchar *sparql, 
-                                         TrackerStoreSparqlUpdateCallback callback,
-                                         gpointer user_data,
-                                         GDestroyNotify destroy)
+                                   TrackerStoreSparqlUpdateCallback callback,
+                                   gpointer user_data,
+                                   GDestroyNotify destroy)
 {
 	TrackerStorePrivate *private;
 	TrackerStoreTask    *task;
 
+	g_assert (sparql != NULL);
+
 	private = g_static_private_get (&private_key);
 	g_return_if_fail (private != NULL);
 
@@ -363,6 +364,8 @@ tracker_store_sparql_update (const gchar *sparql,
 {
 	TrackerStorePrivate *private;
 
+	g_assert (sparql != NULL);
+
 	private = g_static_private_get (&private_key);
 	g_return_if_fail (private != NULL);
 
@@ -385,15 +388,19 @@ tracker_store_sparql_query (const gchar *sparql,
 
 void
 tracker_store_queue_insert_statement (const gchar   *subject, 
-                                            const gchar   *predicate,
-                                            const gchar   *object,
-                                            TrackerStoreSparqlUpdateCallback callback,
-                                            gpointer       user_data,
-                                            GDestroyNotify destroy)
+                                      const gchar   *predicate,
+                                      const gchar   *object,
+                                      TrackerStoreSparqlUpdateCallback callback,
+                                      gpointer       user_data,
+                                      GDestroyNotify destroy)
 {
 	TrackerStorePrivate *private;
 	TrackerStoreTask    *task;
 
+	g_assert (subject != NULL);
+	g_assert (predicate != NULL);
+	g_assert (object != NULL);
+
 	private = g_static_private_get (&private_key);
 	g_return_if_fail (private != NULL);
 
@@ -423,6 +430,8 @@ tracker_store_queue_turtle_import (const gchar   *filename,
 	TrackerStorePrivate *private;
 	TrackerStoreTask    *task;
 
+	g_assert (filename != NULL);
+
 	private = g_static_private_get (&private_key);
 	g_return_if_fail (private != NULL);
 
@@ -448,6 +457,10 @@ tracker_store_insert_statement (const gchar   *subject,
 {
 	TrackerStorePrivate *private;
 
+	g_assert (subject != NULL);
+	g_assert (predicate != NULL);
+	g_assert (object != NULL);
+
 	private = g_static_private_get (&private_key);
 	g_return_if_fail (private != NULL);
 
@@ -468,6 +481,10 @@ tracker_store_delete_statement (const gchar   *subject,
 {
 	TrackerStorePrivate *private;
 
+	g_assert (subject != NULL);
+	g_assert (predicate != NULL);
+	g_assert (object != NULL);
+
 	private = g_static_private_get (&private_key);
 	g_return_if_fail (private != NULL);
 



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