summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Garnacho <carlos@lanedo.com>2011-07-21 17:25:29 +0200
committerJürg Billeter <j@bitron.ch>2011-07-22 14:26:40 +0200
commitd04ae36be0b2c62d3750d806f3631dc2891be857 (patch)
tree18508a4d5e42686cbf4db70006677c1c37981c2e
parent6e02ac61daea416eaa55d993fe2c857711528f25 (diff)
downloadtracker-d04ae36be0b2c62d3750d806f3631dc2891be857.tar.gz
libtracker-miner: Run the async result on high priority sparql buffer updates
-rw-r--r--src/libtracker-miner/tracker-sparql-buffer.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/libtracker-miner/tracker-sparql-buffer.c b/src/libtracker-miner/tracker-sparql-buffer.c
index cb35b44b7..663e79c80 100644
--- a/src/libtracker-miner/tracker-sparql-buffer.c
+++ b/src/libtracker-miner/tracker-sparql-buffer.c
@@ -556,15 +556,25 @@ tracker_sparql_buffer_update_cb (GObject *object,
gpointer user_data)
{
UpdateData *update_data = user_data;
+ SparqlTaskData *task_data;
GError *error = NULL;
tracker_sparql_connection_update_finish (TRACKER_SPARQL_CONNECTION (object),
result, &error);
+
+ task_data = tracker_task_get_data (update_data->task);
+
+ /* Call finished handler with the error, if any */
+ g_simple_async_result_set_op_res_gpointer (task_data->result,
+ update_data->task,
+ NULL);
if (error) {
- g_critical ("Error in prioritized update: %s\n", error->message);
+ g_simple_async_result_set_from_error (task_data->result, error);
g_error_free (error);
}
+ g_simple_async_result_complete (task_data->result);
+
tracker_task_pool_remove (TRACKER_TASK_POOL (update_data->buffer),
update_data->task);
g_slice_free (UpdateData, update_data);