Location | Tool | Test ID | Function | Issue |
---|---|---|---|---|
tracker-store.c:1268:9 | gcc | unused-but-set-variable | tracker_store_task_finish_cb | variable '_tmp44__target' set but not used |
tracker-store.c:1272:3 | clang-analyzer | Value stored to '_tmp44__target' is never read | ||
tracker-store.c:1367:13 | gcc | _tracker_store_pool_dispatch_cb_gfunc | expected 'struct TrackerStoreTask *' but argument is of type 'gconstpointer' | |
tracker-store.c:1824:13 | gcc | _tracker_store_checkpoint_dispatch_cb_gfunc | expected 'gboolean' but argument is of type 'gconstpointer' | |
tracker-store.c:1921:13 | gcc | unused-but-set-variable | tracker_store_init | variable '_tmp15_' set but not used |
tracker-store.c:1953:5 | clang-analyzer | Value stored to '_tmp12_' is never read | ||
tracker-store.c:1963:5 | clang-analyzer | Value stored to '_tmp15_' is never read | ||
tracker-store.c:2090:13 | gcc | unused-but-set-variable | tracker_store_shutdown | variable '_tmp7_' set but not used |
tracker-store.c:2120:5 | clang-analyzer | Value stored to '_tmp5_' is never read | ||
tracker-store.c:2128:5 | clang-analyzer | Value stored to '_tmp7_' is never read | ||
tracker-store.c:2199:31 | gcc | unused-but-set-variable | tracker_store_sparql_query_finish | variable '_data_' set but not used |
tracker-store.c:2207:2 | clang-analyzer | Value stored to '_data_' is never read | ||
tracker-store.c:2428:32 | gcc | unused-but-set-variable | tracker_store_sparql_update_finish | variable '_data_' set but not used |
tracker-store.c:2436:2 | clang-analyzer | Value stored to '_data_' is never read | ||
tracker-store.c:2897:37 | gcc | unused-but-set-variable | tracker_store_queue_turtle_import_finish | variable '_data_' set but not used |
tracker-store.c:2905:2 | clang-analyzer | Value stored to '_data_' is never read | ||
tracker-store.c:3587:25 | gcc | unused-but-set-variable | tracker_store_pause_finish | variable '_data_' set but not used |
tracker-store.c:3589:2 | clang-analyzer | Value stored to '_data_' is never read | ||
tracker-store.c:4426:17 | gcc | unused-but-set-variable | tracker_store_finalize | variable 'self' set but not used |
tracker-store.c:4428:2 | clang-analyzer | Value stored to 'self' is never read |
1 /* tracker-store.c generated by valac 0.18.1, the Vala compiler
2 * generated from tracker-store.vala, do not modify */
3
4 /*
5 * Copyright (C) 2009-2011, Nokia <ivan.frade@nokia.com>
6 *
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public
9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version.
11 *
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public
18 * License along with this library; if not, write to the
19 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20 * Boston, MA 02110-1301, USA.
21 *
22 * Author: Philip Van Hoof <philip@codeminded.be>
23 */
24
25 #include <glib.h>
26 #include <glib-object.h>
27 #include <stdlib.h>
28 #include <string.h>
29 #include <gio/gio.h>
30 #include "libtracker-data/tracker-db-interface.h"
31 #include "libtracker-data/tracker-data-query.h"
32 #include "libtracker-data/tracker-data-update.h"
33 #include "libtracker-data/tracker-data-backup.h"
34 #include "libtracker-data/tracker-db-manager.h"
35 #include "libtracker-data/tracker-db-interface-sqlite.h"
36 #include "tracker-store/tracker-events.h"
37 #include <gobject/gvaluecollector.h>
38
39
40 #define TRACKER_TYPE_STORE (tracker_store_get_type ())
41 #define TRACKER_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_TYPE_STORE, TrackerStore))
42 #define TRACKER_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_TYPE_STORE, TrackerStoreClass))
43 #define TRACKER_IS_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_TYPE_STORE))
44 #define TRACKER_IS_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_TYPE_STORE))
45 #define TRACKER_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_TYPE_STORE, TrackerStoreClass))
46
47 typedef struct _TrackerStore TrackerStore;
48 typedef struct _TrackerStoreClass TrackerStoreClass;
49 typedef struct _TrackerStorePrivate TrackerStorePrivate;
50
51 #define TRACKER_STORE_TYPE_PRIORITY (tracker_store_priority_get_type ())
52
53 #define TRACKER_STORE_TYPE_TASK_TYPE (tracker_store_task_type_get_type ())
54
55 #define TRACKER_STORE_TYPE_TASK (tracker_store_task_get_type ())
56 #define TRACKER_STORE_TASK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_STORE_TYPE_TASK, TrackerStoreTask))
57 #define TRACKER_STORE_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_STORE_TYPE_TASK, TrackerStoreTaskClass))
58 #define TRACKER_STORE_IS_TASK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_STORE_TYPE_TASK))
59 #define TRACKER_STORE_IS_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_STORE_TYPE_TASK))
60 #define TRACKER_STORE_TASK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_STORE_TYPE_TASK, TrackerStoreTaskClass))
61
62 typedef struct _TrackerStoreTask TrackerStoreTask;
63 typedef struct _TrackerStoreTaskClass TrackerStoreTaskClass;
64 #define _tracker_store_task_unref0(var) ((var == NULL) ? NULL : (var = (tracker_store_task_unref (var), NULL)))
65
66 #define TRACKER_STORE_TYPE_QUERY_TASK (tracker_store_query_task_get_type ())
67 #define TRACKER_STORE_QUERY_TASK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_STORE_TYPE_QUERY_TASK, TrackerStoreQueryTask))
68 #define TRACKER_STORE_QUERY_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_STORE_TYPE_QUERY_TASK, TrackerStoreQueryTaskClass))
69 #define TRACKER_STORE_IS_QUERY_TASK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_STORE_TYPE_QUERY_TASK))
70 #define TRACKER_STORE_IS_QUERY_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_STORE_TYPE_QUERY_TASK))
71 #define TRACKER_STORE_QUERY_TASK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_STORE_TYPE_QUERY_TASK, TrackerStoreQueryTaskClass))
72
73 typedef struct _TrackerStoreQueryTask TrackerStoreQueryTask;
74 typedef struct _TrackerStoreQueryTaskClass TrackerStoreQueryTaskClass;
75 typedef struct _Block7Data Block7Data;
76 typedef struct _TrackerStoreTaskPrivate TrackerStoreTaskPrivate;
77 typedef struct _TrackerStoreQueryTaskPrivate TrackerStoreQueryTaskPrivate;
78 #define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
79
80 #define TRACKER_STORE_TYPE_UPDATE_TASK (tracker_store_update_task_get_type ())
81 #define TRACKER_STORE_UPDATE_TASK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_STORE_TYPE_UPDATE_TASK, TrackerStoreUpdateTask))
82 #define TRACKER_STORE_UPDATE_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_STORE_TYPE_UPDATE_TASK, TrackerStoreUpdateTaskClass))
83 #define TRACKER_STORE_IS_UPDATE_TASK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_STORE_TYPE_UPDATE_TASK))
84 #define TRACKER_STORE_IS_UPDATE_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_STORE_TYPE_UPDATE_TASK))
85 #define TRACKER_STORE_UPDATE_TASK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_STORE_TYPE_UPDATE_TASK, TrackerStoreUpdateTaskClass))
86
87 typedef struct _TrackerStoreUpdateTask TrackerStoreUpdateTask;
88 typedef struct _TrackerStoreUpdateTaskClass TrackerStoreUpdateTaskClass;
89 typedef struct _TrackerStoreUpdateTaskPrivate TrackerStoreUpdateTaskPrivate;
90 typedef struct _Block8Data Block8Data;
91 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
92 #define _g_variant_unref0(var) ((var == NULL) ? NULL : (var = (g_variant_unref (var), NULL)))
93
94 #define TRACKER_STORE_TYPE_TURTLE_TASK (tracker_store_turtle_task_get_type ())
95 #define TRACKER_STORE_TURTLE_TASK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_STORE_TYPE_TURTLE_TASK, TrackerStoreTurtleTask))
96 #define TRACKER_STORE_TURTLE_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_STORE_TYPE_TURTLE_TASK, TrackerStoreTurtleTaskClass))
97 #define TRACKER_STORE_IS_TURTLE_TASK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_STORE_TYPE_TURTLE_TASK))
98 #define TRACKER_STORE_IS_TURTLE_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_STORE_TYPE_TURTLE_TASK))
99 #define TRACKER_STORE_TURTLE_TASK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_STORE_TYPE_TURTLE_TASK, TrackerStoreTurtleTaskClass))
100
101 typedef struct _TrackerStoreTurtleTask TrackerStoreTurtleTask;
102 typedef struct _TrackerStoreTurtleTaskClass TrackerStoreTurtleTaskClass;
103 typedef struct _TrackerStoreTurtleTaskPrivate TrackerStoreTurtleTaskPrivate;
104 #define _g_ptr_array_unref0(var) ((var == NULL) ? NULL : (var = (g_ptr_array_unref (var), NULL)))
105 #define __g_queue_free__tracker_store_task_unref0_0(var) ((var == NULL) ? NULL : (var = (_g_queue_free__tracker_store_task_unref0_ (var), NULL)))
106 #define _g_thread_pool_free0(var) ((var == NULL) ? NULL : (var = (g_thread_pool_free (var, FALSE, TRUE), NULL)))
107 #define _g_free0(var) (var = (g_free (var), NULL))
108 typedef struct _TrackerStoreSparqlQueryData TrackerStoreSparqlQueryData;
109 typedef struct _TrackerStoreSparqlUpdateData TrackerStoreSparqlUpdateData;
110 typedef struct _TrackerStoreSparqlUpdateBlankData TrackerStoreSparqlUpdateBlankData;
111 typedef struct _TrackerStoreQueueTurtleImportData TrackerStoreQueueTurtleImportData;
112 typedef struct _TrackerStorePauseData TrackerStorePauseData;
113 typedef struct _TrackerStoreParamSpecTask TrackerStoreParamSpecTask;
114 typedef struct _TrackerParamSpecStore TrackerParamSpecStore;
115
116 struct _TrackerStore {
117 GTypeInstance parent_instance;
118 volatile int ref_count;
119 TrackerStorePrivate * priv;
120 };
121
122 struct _TrackerStoreClass {
123 GTypeClass parent_class;
124 void (*finalize) (TrackerStore *self);
125 };
126
127 typedef enum {
128 TRACKER_STORE_PRIORITY_HIGH,
129 TRACKER_STORE_PRIORITY_LOW,
130 TRACKER_STORE_PRIORITY_TURTLE,
131 TRACKER_STORE_PRIORITY_N_PRIORITIES
132 } TrackerStorePriority;
133
134 typedef enum {
135 TRACKER_STORE_TASK_TYPE_QUERY,
136 TRACKER_STORE_TASK_TYPE_UPDATE,
137 TRACKER_STORE_TASK_TYPE_UPDATE_BLANK,
138 TRACKER_STORE_TASK_TYPE_TURTLE
139 } TrackerStoreTaskType;
140
141 struct _Block7Data {
142 int _ref_count_;
143 TrackerStoreQueryTask* query_task;
144 };
145
146 struct _TrackerStoreTask {
147 GTypeInstance parent_instance;
148 volatile int ref_count;
149 TrackerStoreTaskPrivate * priv;
150 TrackerStoreTaskType type;
151 gchar* client_id;
152 GError* error;
153 GSourceFunc callback;
154 gpointer callback_target;
155 GDestroyNotify callback_target_destroy_notify;
156 };
157
158 struct _TrackerStoreTaskClass {
159 GTypeClass parent_class;
160 void (*finalize) (TrackerStoreTask *self);
161 };
162
163 typedef void (*TrackerStoreSparqlQueryInThread) (TrackerDBCursor* cursor, void* user_data, GError** error);
164 struct _TrackerStoreQueryTask {
165 TrackerStoreTask parent_instance;
166 TrackerStoreQueryTaskPrivate * priv;
167 gchar* query;
168 GCancellable* cancellable;
169 guint watchdog_id;
170 TrackerStoreSparqlQueryInThread in_thread;
171 gpointer in_thread_target;
172 };
173
174 struct _TrackerStoreQueryTaskClass {
175 TrackerStoreTaskClass parent_class;
176 };
177
178 struct _TrackerStoreUpdateTask {
179 TrackerStoreTask parent_instance;
180 TrackerStoreUpdateTaskPrivate * priv;
181 gchar* query;
182 GVariant* blank_nodes;
183 TrackerStorePriority priority;
184 };
185
186 struct _TrackerStoreUpdateTaskClass {
187 TrackerStoreTaskClass parent_class;
188 };
189
190 struct _Block8Data {
191 int _ref_count_;
192 TrackerStoreTask* task;
193 };
194
195 struct _TrackerStoreTurtleTask {
196 TrackerStoreTask parent_instance;
197 TrackerStoreTurtleTaskPrivate * priv;
198 gchar* path;
199 };
200
201 struct _TrackerStoreTurtleTaskClass {
202 TrackerStoreTaskClass parent_class;
203 };
204
205 struct _TrackerStoreSparqlQueryData {
206 int _state_;
207 GObject* _source_object_;
208 GAsyncResult* _res_;
209 GSimpleAsyncResult* _async_result;
210 gchar* sparql;
211 TrackerStorePriority priority;
212 TrackerStoreSparqlQueryInThread in_thread;
213 gpointer in_thread_target;
214 gchar* client_id;
215 TrackerStoreQueryTask* _tmp0_;
216 TrackerStoreQueryTask* task;
217 TrackerStoreQueryTask* _tmp1_;
218 TrackerStoreQueryTask* _tmp2_;
219 const gchar* _tmp3_;
220 gchar* _tmp4_;
221 TrackerStoreQueryTask* _tmp5_;
222 GCancellable* _tmp6_;
223 TrackerStoreQueryTask* _tmp7_;
224 TrackerStoreSparqlQueryInThread _tmp8_;
225 void* _tmp8__target;
226 TrackerStoreQueryTask* _tmp9_;
227 TrackerStoreQueryTask* _tmp10_;
228 const gchar* _tmp11_;
229 gchar* _tmp12_;
230 TrackerStorePriority _tmp13_;
231 GQueue* _tmp14_;
232 TrackerStoreQueryTask* _tmp15_;
233 TrackerStoreTask* _tmp16_;
234 TrackerStoreQueryTask* _tmp17_;
235 GError* _tmp18_;
236 TrackerStoreQueryTask* _tmp19_;
237 GError* _tmp20_;
238 GError* _tmp21_;
239 GError * _inner_error_;
240 };
241
242 struct _TrackerStoreSparqlUpdateData {
243 int _state_;
244 GObject* _source_object_;
245 GAsyncResult* _res_;
246 GSimpleAsyncResult* _async_result;
247 gchar* sparql;
248 TrackerStorePriority priority;
249 gchar* client_id;
250 TrackerStoreUpdateTask* _tmp0_;
251 TrackerStoreUpdateTask* task;
252 TrackerStoreUpdateTask* _tmp1_;
253 TrackerStoreUpdateTask* _tmp2_;
254 const gchar* _tmp3_;
255 gchar* _tmp4_;
256 TrackerStoreUpdateTask* _tmp5_;
257 TrackerStorePriority _tmp6_;
258 TrackerStoreUpdateTask* _tmp7_;
259 TrackerStoreUpdateTask* _tmp8_;
260 const gchar* _tmp9_;
261 gchar* _tmp10_;
262 TrackerStorePriority _tmp11_;
263 GQueue* _tmp12_;
264 TrackerStoreUpdateTask* _tmp13_;
265 TrackerStoreTask* _tmp14_;
266 TrackerStoreUpdateTask* _tmp15_;
267 GError* _tmp16_;
268 TrackerStoreUpdateTask* _tmp17_;
269 GError* _tmp18_;
270 GError* _tmp19_;
271 GError * _inner_error_;
272 };
273
274 struct _TrackerStoreSparqlUpdateBlankData {
275 int _state_;
276 GObject* _source_object_;
277 GAsyncResult* _res_;
278 GSimpleAsyncResult* _async_result;
279 gchar* sparql;
280 TrackerStorePriority priority;
281 gchar* client_id;
282 GVariant* result;
283 TrackerStoreUpdateTask* _tmp0_;
284 TrackerStoreUpdateTask* task;
285 TrackerStoreUpdateTask* _tmp1_;
286 TrackerStoreUpdateTask* _tmp2_;
287 const gchar* _tmp3_;
288 gchar* _tmp4_;
289 TrackerStoreUpdateTask* _tmp5_;
290 TrackerStorePriority _tmp6_;
291 TrackerStoreUpdateTask* _tmp7_;
292 TrackerStoreUpdateTask* _tmp8_;
293 const gchar* _tmp9_;
294 gchar* _tmp10_;
295 TrackerStorePriority _tmp11_;
296 GQueue* _tmp12_;
297 TrackerStoreUpdateTask* _tmp13_;
298 TrackerStoreTask* _tmp14_;
299 TrackerStoreUpdateTask* _tmp15_;
300 GError* _tmp16_;
301 TrackerStoreUpdateTask* _tmp17_;
302 GError* _tmp18_;
303 GError* _tmp19_;
304 TrackerStoreUpdateTask* _tmp20_;
305 GVariant* _tmp21_;
306 GVariant* _tmp22_;
307 GError * _inner_error_;
308 };
309
310 struct _TrackerStoreQueueTurtleImportData {
311 int _state_;
312 GObject* _source_object_;
313 GAsyncResult* _res_;
314 GSimpleAsyncResult* _async_result;
315 GFile* file;
316 gchar* client_id;
317 TrackerStoreTurtleTask* _tmp0_;
318 TrackerStoreTurtleTask* task;
319 TrackerStoreTurtleTask* _tmp1_;
320 TrackerStoreTurtleTask* _tmp2_;
321 GFile* _tmp3_;
322 gchar* _tmp4_;
323 TrackerStoreTurtleTask* _tmp5_;
324 TrackerStoreTurtleTask* _tmp6_;
325 const gchar* _tmp7_;
326 gchar* _tmp8_;
327 GQueue* _tmp9_;
328 TrackerStoreTurtleTask* _tmp10_;
329 TrackerStoreTask* _tmp11_;
330 TrackerStoreTurtleTask* _tmp12_;
331 GError* _tmp13_;
332 TrackerStoreTurtleTask* _tmp14_;
333 GError* _tmp15_;
334 GError* _tmp16_;
335 GError * _inner_error_;
336 };
337
338 struct _TrackerStorePauseData {
339 int _state_;
340 GObject* _source_object_;
341 GAsyncResult* _res_;
342 GSimpleAsyncResult* _async_result;
343 gboolean _tmp0_;
344 gint _tmp1_;
345 gboolean _tmp2_;
346 gboolean _tmp3_;
347 gint _tmp4_;
348 GThreadPool* _tmp5_;
349 GThreadPool* _tmp6_;
350 GError* e;
351 GError* _tmp7_;
352 const gchar* _tmp8_;
353 gboolean _tmp9_;
354 GError * _inner_error_;
355 };
356
357 struct _TrackerStoreParamSpecTask {
358 GParamSpec parent_instance;
359 };
360
361 struct _TrackerParamSpecStore {
362 GParamSpec parent_instance;
363 };
364
365
366 static gpointer tracker_store_parent_class = NULL;
367 static GQueue* tracker_store_query_queues[3];
368 static GQueue* tracker_store_query_queues[3] = {0};
369 static GQueue* tracker_store_update_queues[3];
370 static GQueue* tracker_store_update_queues[3] = {0};
371 static gint tracker_store_n_queries_running;
372 static gint tracker_store_n_queries_running = 0;
373 static gboolean tracker_store_update_running;
374 static gboolean tracker_store_update_running = FALSE;
375 static GThreadPool* tracker_store_update_pool;
376 static GThreadPool* tracker_store_update_pool = NULL;
377 static GThreadPool* tracker_store_query_pool;
378 static GThreadPool* tracker_store_query_pool = NULL;
379 static GThreadPool* tracker_store_checkpoint_pool;
380 static GThreadPool* tracker_store_checkpoint_pool = NULL;
381 static GPtrArray* tracker_store_running_tasks;
382 static GPtrArray* tracker_store_running_tasks = NULL;
383 static gint tracker_store_max_task_time;
384 static gint tracker_store_max_task_time = 0;
385 static gboolean tracker_store_active;
386 static gboolean tracker_store_active = FALSE;
387 static GSourceFunc tracker_store_active_callback;
388 static gpointer tracker_store_active_callback_target;
389 static GDestroyNotify tracker_store_active_callback_target_destroy_notify;
390 static GSourceFunc tracker_store_active_callback = NULL;
391 static gpointer tracker_store_active_callback_target = NULL;
392 static GDestroyNotify tracker_store_active_callback_target_destroy_notify = NULL;
393 static gint tracker_store_checkpointing;
394 static gint tracker_store_checkpointing = 0;
395 static gpointer tracker_store_task_parent_class = NULL;
396 static gpointer tracker_store_query_task_parent_class = NULL;
397 static gpointer tracker_store_update_task_parent_class = NULL;
398 static gpointer tracker_store_turtle_task_parent_class = NULL;
399
400 gpointer tracker_store_ref (gpointer instance);
401 void tracker_store_unref (gpointer instance);
402 GParamSpec* tracker_param_spec_store (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
403 void tracker_value_set_store (GValue* value, gpointer v_object);
404 void tracker_value_take_store (GValue* value, gpointer v_object);
405 gpointer tracker_value_get_store (const GValue* value);
406 GType tracker_store_get_type (void) G_GNUC_CONST;
407 enum {
408 TRACKER_STORE_DUMMY_PROPERTY
409 };
410 GType tracker_store_priority_get_type (void) G_GNUC_CONST;
411 static GType tracker_store_task_type_get_type (void) G_GNUC_UNUSED;
412 static gpointer tracker_store_task_ref (gpointer instance);
413 static void tracker_store_task_unref (gpointer instance);
414 static GParamSpec* tracker_store_param_spec_task (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) G_GNUC_UNUSED;
415 static void tracker_store_value_set_task (GValue* value, gpointer v_object) G_GNUC_UNUSED;
416 static void tracker_store_value_take_task (GValue* value, gpointer v_object) G_GNUC_UNUSED;
417 static gpointer tracker_store_value_get_task (const GValue* value) G_GNUC_UNUSED;
418 static GType tracker_store_task_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
419 #define TRACKER_STORE_MAX_CONCURRENT_QUERIES 2
420 #define TRACKER_STORE_MAX_TASK_TIME 30
421 static void tracker_store_sched (void);
422 static GType tracker_store_query_task_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
423 static Block7Data* block7_data_ref (Block7Data* _data7_);
424 static void block7_data_unref (void * _userdata_);
425 static gboolean ____lambda2_ (Block7Data* _data7_);
426 static gboolean _____lambda2__gsource_func (gpointer self);
427 static TrackerDataCommitType tracker_store_commit_type (TrackerStoreTask* task);
428 static GType tracker_store_update_task_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
429 static gboolean tracker_store_task_finish_cb (TrackerStoreTask* task);
430 static void tracker_store_pool_dispatch_cb (TrackerStoreTask* task);
431 static Block8Data* block8_data_ref (Block8Data* _data8_);
432 static void block8_data_unref (void * _userdata_);
433 static void tracker_store_wal_hook (gint n_pages);
434 static void _tracker_store_wal_hook_tracker_db_wal_callback (gint n_pages);
435 static GType tracker_store_turtle_task_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
436 static gboolean __lambda3_ (Block8Data* _data8_);
437 static gboolean ___lambda3__gsource_func (gpointer self);
438 void tracker_store_wal_checkpoint (void);
439 static void tracker_store_checkpoint_dispatch_cb (gboolean task);
440 void tracker_store_init (void);
441 static void _tracker_store_task_unref0_ (gpointer var);
442 static void _g_queue_free__tracker_store_task_unref0_ (GQueue* self);
443 static void _tracker_store_pool_dispatch_cb_gfunc (gconstpointer data, gpointer self);
444 static void _tracker_store_checkpoint_dispatch_cb_gfunc (gconstpointer data, gpointer self);
445 void tracker_store_shutdown (void);
446 static void tracker_store_sparql_query_data_free (gpointer _data);
447 void tracker_store_sparql_query (const gchar* sparql, TrackerStorePriority priority, TrackerStoreSparqlQueryInThread in_thread, void* in_thread_target, const gchar* client_id, GAsyncReadyCallback _callback_, gpointer _user_data_);
448 void tracker_store_sparql_query_finish (GAsyncResult* _res_, GError** error);
449 static gboolean tracker_store_sparql_query_co (TrackerStoreSparqlQueryData* _data_);
450 static TrackerStoreQueryTask* tracker_store_query_task_new (void);
451 static TrackerStoreQueryTask* tracker_store_query_task_construct (GType object_type);
452 static gboolean _tracker_store_sparql_query_co_gsource_func (gpointer self);
453 static void tracker_store_sparql_update_data_free (gpointer _data);
454 void tracker_store_sparql_update (const gchar* sparql, TrackerStorePriority priority, const gchar* client_id, GAsyncReadyCallback _callback_, gpointer _user_data_);
455 void tracker_store_sparql_update_finish (GAsyncResult* _res_, GError** error);
456 static gboolean tracker_store_sparql_update_co (TrackerStoreSparqlUpdateData* _data_);
457 static TrackerStoreUpdateTask* tracker_store_update_task_new (void);
458 static TrackerStoreUpdateTask* tracker_store_update_task_construct (GType object_type);
459 static gboolean _tracker_store_sparql_update_co_gsource_func (gpointer self);
460 static void tracker_store_sparql_update_blank_data_free (gpointer _data);
461 void tracker_store_sparql_update_blank (const gchar* sparql, TrackerStorePriority priority, const gchar* client_id, GAsyncReadyCallback _callback_, gpointer _user_data_);
462 GVariant* tracker_store_sparql_update_blank_finish (GAsyncResult* _res_, GError** error);
463 static gboolean tracker_store_sparql_update_blank_co (TrackerStoreSparqlUpdateBlankData* _data_);
464 static gboolean _tracker_store_sparql_update_blank_co_gsource_func (gpointer self);
465 static void tracker_store_queue_turtle_import_data_free (gpointer _data);
466 void tracker_store_queue_turtle_import (GFile* file, const gchar* client_id, GAsyncReadyCallback _callback_, gpointer _user_data_);
467 void tracker_store_queue_turtle_import_finish (GAsyncResult* _res_, GError** error);
468 static gboolean tracker_store_queue_turtle_import_co (TrackerStoreQueueTurtleImportData* _data_);
469 static TrackerStoreTurtleTask* tracker_store_turtle_task_new (void);
470 static TrackerStoreTurtleTask* tracker_store_turtle_task_construct (GType object_type);
471 static gboolean _tracker_store_queue_turtle_import_co_gsource_func (gpointer self);
472 guint tracker_store_get_queue_size (TrackerStore* self);
473 void tracker_store_unreg_batches (const gchar* client_id);
474 static void tracker_store_pause_data_free (gpointer _data);
475 void tracker_store_pause (GAsyncReadyCallback _callback_, gpointer _user_data_);
476 void tracker_store_pause_finish (GAsyncResult* _res_);
477 static gboolean tracker_store_pause_co (TrackerStorePauseData* _data_);
478 static gboolean _tracker_store_pause_co_gsource_func (gpointer self);
479 void tracker_store_resume (void);
480 TrackerStore* tracker_store_new (void);
481 TrackerStore* tracker_store_construct (GType object_type);
482 enum {
483 TRACKER_STORE_TASK_DUMMY_PROPERTY
484 };
485 static TrackerStoreTask* tracker_store_task_construct (GType object_type);
486 static void tracker_store_task_finalize (TrackerStoreTask* obj);
487 enum {
488 TRACKER_STORE_QUERY_TASK_DUMMY_PROPERTY
489 };
490 static void tracker_store_query_task_finalize (TrackerStoreTask* obj);
491 enum {
492 TRACKER_STORE_UPDATE_TASK_DUMMY_PROPERTY
493 };
494 static void tracker_store_update_task_finalize (TrackerStoreTask* obj);
495 enum {
496 TRACKER_STORE_TURTLE_TASK_DUMMY_PROPERTY
497 };
498 static void tracker_store_turtle_task_finalize (TrackerStoreTask* obj);
499 static void tracker_store_finalize (TrackerStore* obj);
500
501
502 GType tracker_store_priority_get_type (void) {
503 static volatile gsize tracker_store_priority_type_id__volatile = 0;
504 if (g_once_init_enter (&tracker_store_priority_type_id__volatile)) {
505 static const GEnumValue values[] = {{TRACKER_STORE_PRIORITY_HIGH, "TRACKER_STORE_PRIORITY_HIGH", "high"}, {TRACKER_STORE_PRIORITY_LOW, "TRACKER_STORE_PRIORITY_LOW", "low"}, {TRACKER_STORE_PRIORITY_TURTLE, "TRACKER_STORE_PRIORITY_TURTLE", "turtle"}, {TRACKER_STORE_PRIORITY_N_PRIORITIES, "TRACKER_STORE_PRIORITY_N_PRIORITIES", "n-priorities"}, {0, NULL, NULL}};
506 GType tracker_store_priority_type_id;
507 tracker_store_priority_type_id = g_enum_register_static ("TrackerStorePriority", values);
508 g_once_init_leave (&tracker_store_priority_type_id__volatile, tracker_store_priority_type_id);
509 }
510 return tracker_store_priority_type_id__volatile;
511 }
512
513
514 static GType tracker_store_task_type_get_type (void) {
515 static volatile gsize tracker_store_task_type_type_id__volatile = 0;
516 if (g_once_init_enter (&tracker_store_task_type_type_id__volatile)) {
517 static const GEnumValue values[] = {{TRACKER_STORE_TASK_TYPE_QUERY, "TRACKER_STORE_TASK_TYPE_QUERY", "query"}, {TRACKER_STORE_TASK_TYPE_UPDATE, "TRACKER_STORE_TASK_TYPE_UPDATE", "update"}, {TRACKER_STORE_TASK_TYPE_UPDATE_BLANK, "TRACKER_STORE_TASK_TYPE_UPDATE_BLANK", "update-blank"}, {TRACKER_STORE_TASK_TYPE_TURTLE, "TRACKER_STORE_TASK_TYPE_TURTLE", "turtle"}, {0, NULL, NULL}};
518 GType tracker_store_task_type_type_id;
519 tracker_store_task_type_type_id = g_enum_register_static ("TrackerStoreTaskType", values);
520 g_once_init_leave (&tracker_store_task_type_type_id__volatile, tracker_store_task_type_type_id);
521 }
522 return tracker_store_task_type_type_id__volatile;
523 }
524
525
526 static gpointer _tracker_store_task_ref0 (gpointer self) {
527 #line 103 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
528 return self ? tracker_store_task_ref (self) : NULL;
529 #line 530 "tracker-store.c"
530 }
531
532
533 static Block7Data* block7_data_ref (Block7Data* _data7_) {
534 #line 105 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
535 g_atomic_int_inc (&_data7_->_ref_count_);
536 #line 105 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
537 return _data7_;
538 #line 539 "tracker-store.c"
539 }
540
541
542 static void block7_data_unref (void * _userdata_) {
543 Block7Data* _data7_;
544 _data7_ = (Block7Data*) _userdata_;
545 #line 105 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
546 if (g_atomic_int_dec_and_test (&_data7_->_ref_count_)) {
547 #line 105 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
548 _tracker_store_task_unref0 (_data7_->query_task);
549 #line 105 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
550 g_slice_free (Block7Data, _data7_);
551 #line 552 "tracker-store.c"
552 }
553 }
554
555
556 static gboolean ____lambda2_ (Block7Data* _data7_) {
557 gboolean result = FALSE;
558 TrackerStoreQueryTask* _tmp0_;
559 GCancellable* _tmp1_;
560 #line 108 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
561 _tmp0_ = _data7_->query_task;
562 #line 108 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
563 _tmp1_ = _tmp0_->cancellable;
564 #line 108 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
565 g_cancellable_cancel (_tmp1_);
566 #line 109 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
567 result = FALSE;
568 #line 109 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
569 return result;
570 #line 571 "tracker-store.c"
571 }
572
573
574 static gboolean _____lambda2__gsource_func (gpointer self) {
575 gboolean result;
576 result = ____lambda2_ (self);
577 #line 107 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
578 return result;
579 #line 580 "tracker-store.c"
580 }
581
582
583 static void tracker_store_sched (void) {
584 TrackerStoreTask* task;
585 gboolean _tmp0_;
586 gboolean _tmp23_;
587 GError * _inner_error_ = NULL;
588 #line 86 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
589 task = NULL;
590 #line 88 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
591 _tmp0_ = tracker_store_active;
592 #line 88 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
593 if (!_tmp0_) {
594 #line 89 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
595 _tracker_store_task_unref0 (task);
596 #line 89 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
597 return;
598 #line 599 "tracker-store.c"
599 }
600 #line 92 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
601 while (TRUE) {
602 #line 603 "tracker-store.c"
603 gint _tmp1_;
604 TrackerStoreTask* _tmp10_;
605 GPtrArray* _tmp11_;
606 TrackerStoreTask* _tmp12_;
607 TrackerStoreTask* _tmp13_;
608 gint _tmp14_;
609 gint _tmp20_;
610 #line 92 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
611 _tmp1_ = tracker_store_n_queries_running;
612 #line 92 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
613 if (!(_tmp1_ < TRACKER_STORE_MAX_CONCURRENT_QUERIES)) {
614 #line 92 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
615 break;
616 #line 617 "tracker-store.c"
617 }
618 {
619 gint i;
620 #line 93 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
621 i = 0;
622 #line 623 "tracker-store.c"
623 {
624 gboolean _tmp2_;
625 #line 93 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
626 _tmp2_ = TRUE;
627 #line 93 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
628 while (TRUE) {
629 #line 630 "tracker-store.c"
630 gboolean _tmp3_;
631 gint _tmp5_;
632 gint _tmp6_;
633 GQueue* _tmp7_;
634 gpointer _tmp8_ = NULL;
635 TrackerStoreTask* _tmp9_;
636 #line 93 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
637 _tmp3_ = _tmp2_;
638 #line 93 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
639 if (!_tmp3_) {
640 #line 641 "tracker-store.c"
641 gint _tmp4_;
642 #line 93 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
643 _tmp4_ = i;
644 #line 93 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
645 i = _tmp4_ + 1;
646 #line 647 "tracker-store.c"
647 }
648 #line 93 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
649 _tmp2_ = FALSE;
650 #line 93 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
651 _tmp5_ = i;
652 #line 93 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
653 if (!(_tmp5_ < ((gint) TRACKER_STORE_PRIORITY_N_PRIORITIES))) {
654 #line 93 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
655 break;
656 #line 657 "tracker-store.c"
657 }
658 #line 94 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
659 _tmp6_ = i;
660 #line 94 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
661 _tmp7_ = tracker_store_query_queues[_tmp6_];
662 #line 94 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
663 _tmp8_ = g_queue_pop_head (_tmp7_);
664 #line 94 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
665 _tracker_store_task_unref0 (task);
666 #line 94 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
667 task = (TrackerStoreTask*) _tmp8_;
668 #line 95 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
669 _tmp9_ = task;
670 #line 95 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
671 if (_tmp9_ != NULL) {
672 #line 96 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
673 break;
674 #line 675 "tracker-store.c"
675 }
676 }
677 }
678 }
679 #line 99 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
680 _tmp10_ = task;
681 #line 99 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
682 if (_tmp10_ == NULL) {
683 #line 101 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
684 break;
685 #line 686 "tracker-store.c"
686 }
687 #line 103 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
688 _tmp11_ = tracker_store_running_tasks;
689 #line 103 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
690 _tmp12_ = task;
691 #line 103 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
692 _tmp13_ = _tracker_store_task_ref0 (_tmp12_);
693 #line 103 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
694 g_ptr_array_add (_tmp11_, _tmp13_);
695 #line 105 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
696 _tmp14_ = tracker_store_max_task_time;
697 #line 105 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
698 if (_tmp14_ != 0) {
699 #line 700 "tracker-store.c"
700 Block7Data* _data7_;
701 TrackerStoreTask* _tmp15_;
702 TrackerStoreQueryTask* _tmp16_;
703 TrackerStoreQueryTask* _tmp17_;
704 gint _tmp18_;
705 guint _tmp19_ = 0U;
706 #line 105 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
707 _data7_ = g_slice_new0 (Block7Data);
708 #line 105 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
709 _data7_->_ref_count_ = 1;
710 #line 106 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
711 _tmp15_ = task;
712 #line 106 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
713 _tmp16_ = _tracker_store_task_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, TRACKER_STORE_TYPE_QUERY_TASK, TrackerStoreQueryTask));
714 #line 106 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
715 _data7_->query_task = _tmp16_;
716 #line 107 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
717 _tmp17_ = _data7_->query_task;
718 #line 107 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
719 _tmp18_ = tracker_store_max_task_time;
720 #line 107 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
721 _tmp19_ = g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, (guint) _tmp18_, _____lambda2__gsource_func, block7_data_ref (_data7_), block7_data_unref);
722 #line 107 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
723 _tmp17_->watchdog_id = _tmp19_;
724 #line 105 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
725 block7_data_unref (_data7_);
726 #line 105 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
727 _data7_ = NULL;
728 #line 729 "tracker-store.c"
729 }
730 #line 113 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
731 _tmp20_ = tracker_store_n_queries_running;
732 #line 113 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
733 tracker_store_n_queries_running = _tmp20_ + 1;
734 #line 735 "tracker-store.c"
735 {
736 GThreadPool* _tmp21_;
737 TrackerStoreTask* _tmp22_;
738 #line 115 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
739 _tmp21_ = tracker_store_query_pool;
740 #line 115 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
741 _tmp22_ = task;
742 #line 115 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
743 g_thread_pool_push (_tmp21_, _tmp22_, &_inner_error_);
744 #line 115 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
745 if (_inner_error_ != NULL) {
746 #line 747 "tracker-store.c"
747 goto __catch18_g_error;
748 }
749 }
750 goto __finally18;
751 __catch18_g_error:
752 {
753 GError* e = NULL;
754 #line 114 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
755 e = _inner_error_;
756 #line 114 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
757 _inner_error_ = NULL;
758 #line 114 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
759 _g_error_free0 (e);
760 #line 761 "tracker-store.c"
761 }
762 __finally18:
763 #line 114 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
764 if (_inner_error_ != NULL) {
765 #line 114 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
766 _tracker_store_task_unref0 (task);
767 #line 114 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
768 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
769 #line 114 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
770 g_clear_error (&_inner_error_);
771 #line 114 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
772 return;
773 #line 774 "tracker-store.c"
774 }
775 }
776 #line 121 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
777 _tmp23_ = tracker_store_update_running;
778 #line 121 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
779 if (!_tmp23_) {
780 #line 781 "tracker-store.c"
781 TrackerStoreTask* _tmp32_;
782 {
783 gint i;
784 #line 122 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
785 i = 0;
786 #line 787 "tracker-store.c"
787 {
788 gboolean _tmp24_;
789 #line 122 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
790 _tmp24_ = TRUE;
791 #line 122 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
792 while (TRUE) {
793 #line 794 "tracker-store.c"
794 gboolean _tmp25_;
795 gint _tmp27_;
796 gint _tmp28_;
797 GQueue* _tmp29_;
798 gpointer _tmp30_ = NULL;
799 TrackerStoreTask* _tmp31_;
800 #line 122 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
801 _tmp25_ = _tmp24_;
802 #line 122 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
803 if (!_tmp25_) {
804 #line 805 "tracker-store.c"
805 gint _tmp26_;
806 #line 122 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
807 _tmp26_ = i;
808 #line 122 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
809 i = _tmp26_ + 1;
810 #line 811 "tracker-store.c"
811 }
812 #line 122 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
813 _tmp24_ = FALSE;
814 #line 122 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
815 _tmp27_ = i;
816 #line 122 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
817 if (!(_tmp27_ < ((gint) TRACKER_STORE_PRIORITY_N_PRIORITIES))) {
818 #line 122 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
819 break;
820 #line 821 "tracker-store.c"
821 }
822 #line 123 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
823 _tmp28_ = i;
824 #line 123 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
825 _tmp29_ = tracker_store_update_queues[_tmp28_];
826 #line 123 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
827 _tmp30_ = g_queue_pop_head (_tmp29_);
828 #line 123 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
829 _tracker_store_task_unref0 (task);
830 #line 123 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
831 task = (TrackerStoreTask*) _tmp30_;
832 #line 124 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
833 _tmp31_ = task;
834 #line 124 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
835 if (_tmp31_ != NULL) {
836 #line 125 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
837 break;
838 #line 839 "tracker-store.c"
839 }
840 }
841 }
842 }
843 #line 128 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
844 _tmp32_ = task;
845 #line 128 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
846 if (_tmp32_ != NULL) {
847 #line 129 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
848 tracker_store_update_running = TRUE;
849 #line 850 "tracker-store.c"
850 {
851 GThreadPool* _tmp33_;
852 TrackerStoreTask* _tmp34_;
853 #line 131 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
854 _tmp33_ = tracker_store_update_pool;
855 #line 131 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
856 _tmp34_ = task;
857 #line 131 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
858 g_thread_pool_push (_tmp33_, _tmp34_, &_inner_error_);
859 #line 131 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
860 if (_inner_error_ != NULL) {
861 #line 862 "tracker-store.c"
862 goto __catch19_g_error;
863 }
864 }
865 goto __finally19;
866 __catch19_g_error:
867 {
868 GError* e = NULL;
869 #line 130 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
870 e = _inner_error_;
871 #line 130 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
872 _inner_error_ = NULL;
873 #line 130 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
874 _g_error_free0 (e);
875 #line 876 "tracker-store.c"
876 }
877 __finally19:
878 #line 130 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
879 if (_inner_error_ != NULL) {
880 #line 130 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
881 _tracker_store_task_unref0 (task);
882 #line 130 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
883 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
884 #line 130 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
885 g_clear_error (&_inner_error_);
886 #line 130 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
887 return;
888 #line 889 "tracker-store.c"
889 }
890 }
891 }
892 #line 85 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
893 _tracker_store_task_unref0 (task);
894 #line 895 "tracker-store.c"
895 }
896
897
898 static TrackerDataCommitType tracker_store_commit_type (TrackerStoreTask* task) {
899 TrackerDataCommitType result = 0;
900 TrackerStoreTask* _tmp0_;
901 TrackerStoreTaskType _tmp1_;
902 #line 139 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
903 g_return_val_if_fail (task != NULL, 0);
904 #line 140 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
905 _tmp0_ = task;
906 #line 140 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
907 _tmp1_ = _tmp0_->type;
908 #line 140 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
909 switch (_tmp1_) {
910 #line 140 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
911 case TRACKER_STORE_TASK_TYPE_UPDATE:
912 #line 140 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
913 case TRACKER_STORE_TASK_TYPE_UPDATE_BLANK:
914 #line 915 "tracker-store.c"
915 {
916 TrackerStoreTask* _tmp2_;
917 TrackerStorePriority _tmp3_;
918 #line 143 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
919 _tmp2_ = task;
920 #line 143 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
921 _tmp3_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TRACKER_STORE_TYPE_UPDATE_TASK, TrackerStoreUpdateTask)->priority;
922 #line 143 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
923 if (_tmp3_ == TRACKER_STORE_PRIORITY_HIGH) {
924 #line 144 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
925 result = TRACKER_DATA_COMMIT_REGULAR;
926 #line 144 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
927 return result;
928 #line 929 "tracker-store.c"
929 } else {
930 GQueue* _tmp4_;
931 guint _tmp5_ = 0U;
932 #line 145 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
933 _tmp4_ = tracker_store_update_queues[TRACKER_STORE_PRIORITY_LOW];
934 #line 145 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
935 _tmp5_ = g_queue_get_length (_tmp4_);
936 #line 145 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
937 if (_tmp5_ > ((guint) 0)) {
938 #line 146 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
939 result = TRACKER_DATA_COMMIT_BATCH;
940 #line 146 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
941 return result;
942 #line 943 "tracker-store.c"
943 } else {
944 #line 148 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
945 result = TRACKER_DATA_COMMIT_BATCH_LAST;
946 #line 148 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
947 return result;
948 #line 949 "tracker-store.c"
949 }
950 }
951 }
952 #line 140 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
953 case TRACKER_STORE_TASK_TYPE_TURTLE:
954 #line 955 "tracker-store.c"
955 {
956 GQueue* _tmp6_;
957 guint _tmp7_ = 0U;
958 #line 151 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
959 _tmp6_ = tracker_store_update_queues[TRACKER_STORE_PRIORITY_TURTLE];
960 #line 151 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
961 _tmp7_ = g_queue_get_length (_tmp6_);
962 #line 151 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
963 if (_tmp7_ > ((guint) 0)) {
964 #line 152 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
965 result = TRACKER_DATA_COMMIT_BATCH;
966 #line 152 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
967 return result;
968 #line 969 "tracker-store.c"
969 } else {
970 #line 154 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
971 result = TRACKER_DATA_COMMIT_BATCH_LAST;
972 #line 154 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
973 return result;
974 #line 975 "tracker-store.c"
975 }
976 }
977 default:
978 {
979 #line 157 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
980 g_warn_if_reached ();
981 #line 158 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
982 result = TRACKER_DATA_COMMIT_REGULAR;
983 #line 158 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
984 return result;
985 #line 986 "tracker-store.c"
986 }
987 }
988 }
989
990
991 static gpointer _g_error_copy0 (gpointer self) {
992 #line 170 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
993 return self ? g_error_copy (self) : NULL;
994 #line 995 "tracker-store.c"
995 }
996
997
998 static gboolean tracker_store_task_finish_cb (TrackerStoreTask* task) {
999 gboolean result = FALSE;
1000 TrackerStoreTask* _tmp0_;
1001 TrackerStoreTaskType _tmp1_;
1002 gboolean _tmp39_ = FALSE;
1003 gboolean _tmp40_ = FALSE;
1004 gint _tmp41_;
1005 gboolean _tmp43_;
1006 gboolean _tmp45_;
1007 GError * _inner_error_ = NULL;
1008 #line 162 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1009 g_return_val_if_fail (task != NULL, FALSE);
1010 #line 163 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1011 _tmp0_ = task;
1012 #line 163 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1013 _tmp1_ = _tmp0_->type;
1014 #line 163 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1015 if (_tmp1_ == TRACKER_STORE_TASK_TYPE_QUERY) {
1016 #line 1017 "tracker-store.c"
1017 TrackerStoreTask* _tmp2_;
1018 TrackerStoreQueryTask* _tmp3_;
1019 TrackerStoreQueryTask* query_task;
1020 TrackerStoreTask* _tmp4_;
1021 GError* _tmp5_;
1022 TrackerStoreTask* _tmp11_;
1023 GSourceFunc _tmp12_;
1024 void* _tmp12__target;
1025 TrackerStoreTask* _tmp13_;
1026 GPtrArray* _tmp14_;
1027 TrackerStoreTask* _tmp15_;
1028 gint _tmp16_;
1029 #line 164 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1030 _tmp2_ = task;
1031 #line 164 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1032 _tmp3_ = _tracker_store_task_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TRACKER_STORE_TYPE_QUERY_TASK, TrackerStoreQueryTask));
1033 #line 164 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1034 query_task = _tmp3_;
1035 #line 166 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1036 _tmp4_ = task;
1037 #line 166 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1038 _tmp5_ = _tmp4_->error;
1039 #line 166 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1040 if (_tmp5_ == NULL) {
1041 #line 1042 "tracker-store.c"
1042 {
1043 TrackerStoreQueryTask* _tmp6_;
1044 GCancellable* _tmp7_;
1045 #line 168 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1046 _tmp6_ = query_task;
1047 #line 168 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1048 _tmp7_ = _tmp6_->cancellable;
1049 #line 168 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1050 g_cancellable_set_error_if_cancelled (_tmp7_, &_inner_error_);
1051 #line 168 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1052 if (_inner_error_ != NULL) {
1053 #line 1054 "tracker-store.c"
1054 goto __catch20_g_error;
1055 }
1056 }
1057 goto __finally20;
1058 __catch20_g_error:
1059 {
1060 GError* e = NULL;
1061 TrackerStoreTask* _tmp8_;
1062 GError* _tmp9_;
1063 GError* _tmp10_;
1064 #line 167 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1065 e = _inner_error_;
1066 #line 167 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1067 _inner_error_ = NULL;
1068 #line 170 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1069 _tmp8_ = task;
1070 #line 170 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1071 _tmp9_ = e;
1072 #line 170 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1073 _tmp10_ = _g_error_copy0 (_tmp9_);
1074 #line 170 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1075 _g_error_free0 (_tmp8_->error);
1076 #line 170 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1077 _tmp8_->error = _tmp10_;
1078 #line 167 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1079 _g_error_free0 (e);
1080 #line 1081 "tracker-store.c"
1081 }
1082 __finally20:
1083 #line 167 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1084 if (_inner_error_ != NULL) {
1085 #line 167 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1086 _tracker_store_task_unref0 (query_task);
1087 #line 167 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1088 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
1089 #line 167 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1090 g_clear_error (&_inner_error_);
1091 #line 167 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1092 return FALSE;
1093 #line 1094 "tracker-store.c"
1094 }
1095 }
1096 #line 174 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1097 _tmp11_ = task;
1098 #line 174 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1099 _tmp12_ = _tmp11_->callback;
1100 #line 174 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1101 _tmp12__target = _tmp11_->callback_target;
1102 #line 174 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1103 _tmp12_ (_tmp12__target);
1104 #line 175 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1105 _tmp13_ = task;
1106 #line 175 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1107 _g_error_free0 (_tmp13_->error);
1108 #line 175 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1109 _tmp13_->error = NULL;
1110 #line 177 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1111 _tmp14_ = tracker_store_running_tasks;
1112 #line 177 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1113 _tmp15_ = task;
1114 #line 177 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1115 g_ptr_array_remove (_tmp14_, _tmp15_);
1116 #line 178 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1117 _tmp16_ = tracker_store_n_queries_running;
1118 #line 178 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1119 tracker_store_n_queries_running = _tmp16_ - 1;
1120 #line 163 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1121 _tracker_store_task_unref0 (query_task);
1122 #line 1123 "tracker-store.c"
1123 } else {
1124 gboolean _tmp17_ = FALSE;
1125 TrackerStoreTask* _tmp18_;
1126 TrackerStoreTaskType _tmp19_;
1127 gboolean _tmp22_;
1128 #line 179 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1129 _tmp18_ = task;
1130 #line 179 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1131 _tmp19_ = _tmp18_->type;
1132 #line 179 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1133 if (_tmp19_ == TRACKER_STORE_TASK_TYPE_UPDATE) {
1134 #line 179 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1135 _tmp17_ = TRUE;
1136 #line 1137 "tracker-store.c"
1137 } else {
1138 TrackerStoreTask* _tmp20_;
1139 TrackerStoreTaskType _tmp21_;
1140 #line 179 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1141 _tmp20_ = task;
1142 #line 179 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1143 _tmp21_ = _tmp20_->type;
1144 #line 179 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1145 _tmp17_ = _tmp21_ == TRACKER_STORE_TASK_TYPE_UPDATE_BLANK;
1146 #line 1147 "tracker-store.c"
1147 }
1148 #line 179 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1149 _tmp22_ = _tmp17_;
1150 #line 179 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1151 if (_tmp22_) {
1152 #line 1153 "tracker-store.c"
1153 TrackerStoreTask* _tmp23_;
1154 GError* _tmp24_;
1155 TrackerStoreTask* _tmp27_;
1156 GSourceFunc _tmp28_;
1157 void* _tmp28__target;
1158 TrackerStoreTask* _tmp29_;
1159 #line 180 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1160 _tmp23_ = task;
1161 #line 180 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1162 _tmp24_ = _tmp23_->error;
1163 #line 180 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1164 if (_tmp24_ == NULL) {
1165 #line 1166 "tracker-store.c"
1166 TrackerStoreTask* _tmp25_;
1167 TrackerDataCommitType _tmp26_ = 0;
1168 #line 181 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1169 _tmp25_ = task;
1170 #line 181 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1171 _tmp26_ = tracker_store_commit_type (_tmp25_);
1172 #line 181 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1173 tracker_data_notify_transaction (_tmp26_);
1174 #line 1175 "tracker-store.c"
1175 }
1176 #line 184 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1177 _tmp27_ = task;
1178 #line 184 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1179 _tmp28_ = _tmp27_->callback;
1180 #line 184 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1181 _tmp28__target = _tmp27_->callback_target;
1182 #line 184 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1183 _tmp28_ (_tmp28__target);
1184 #line 185 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1185 _tmp29_ = task;
1186 #line 185 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1187 _g_error_free0 (_tmp29_->error);
1188 #line 185 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1189 _tmp29_->error = NULL;
1190 #line 187 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1191 tracker_store_update_running = FALSE;
1192 #line 1193 "tracker-store.c"
1193 } else {
1194 TrackerStoreTask* _tmp30_;
1195 TrackerStoreTaskType _tmp31_;
1196 #line 188 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1197 _tmp30_ = task;
1198 #line 188 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1199 _tmp31_ = _tmp30_->type;
1200 #line 188 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1201 if (_tmp31_ == TRACKER_STORE_TASK_TYPE_TURTLE) {
1202 #line 1203 "tracker-store.c"
1203 TrackerStoreTask* _tmp32_;
1204 GError* _tmp33_;
1205 TrackerStoreTask* _tmp36_;
1206 GSourceFunc _tmp37_;
1207 void* _tmp37__target;
1208 TrackerStoreTask* _tmp38_;
1209 #line 189 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1210 _tmp32_ = task;
1211 #line 189 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1212 _tmp33_ = _tmp32_->error;
1213 #line 189 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1214 if (_tmp33_ == NULL) {
1215 #line 1216 "tracker-store.c"
1216 TrackerStoreTask* _tmp34_;
1217 TrackerDataCommitType _tmp35_ = 0;
1218 #line 190 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1219 _tmp34_ = task;
1220 #line 190 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1221 _tmp35_ = tracker_store_commit_type (_tmp34_);
1222 #line 190 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1223 tracker_data_notify_transaction (_tmp35_);
1224 #line 1225 "tracker-store.c"
1225 }
1226 #line 193 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1227 _tmp36_ = task;
1228 #line 193 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1229 _tmp37_ = _tmp36_->callback;
1230 #line 193 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1231 _tmp37__target = _tmp36_->callback_target;
1232 #line 193 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1233 _tmp37_ (_tmp37__target);
1234 #line 194 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1235 _tmp38_ = task;
1236 #line 194 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1237 _g_error_free0 (_tmp38_->error);
1238 #line 194 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1239 _tmp38_->error = NULL;
1240 #line 196 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1241 tracker_store_update_running = FALSE;
1242 #line 1243 "tracker-store.c"
1243 }
1244 }
1245 }
1246 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1247 _tmp41_ = tracker_store_n_queries_running;
1248 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1249 if (_tmp41_ == 0) {
1250 #line 1251 "tracker-store.c"
1251 gboolean _tmp42_;
1252 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1253 _tmp42_ = tracker_store_update_running;
1254 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1255 _tmp40_ = !_tmp42_;
1256 #line 1257 "tracker-store.c"
1257 } else {
1258 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1259 _tmp40_ = FALSE;
1260 #line 1261 "tracker-store.c"
1261 }
1262 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1263 _tmp43_ = _tmp40_;
1264 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1265 if (_tmp43_) {
1266 #line 1267 "tracker-store.c"
1267 GSourceFunc _tmp44_;
1268 void* _tmp44__target;
(emitted by gcc) 1269 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1270 _tmp44_ = tracker_store_active_callback;
1271 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1272 _tmp44__target = tracker_store_active_callback_target;
(emitted by clang-analyzer)TODO: a detailed trace is available in the data model (not yet rendered in this report)
1273 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1274 _tmp39_ = _tmp44_ != NULL;
1275 #line 1276 "tracker-store.c"
1276 } else {
1277 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1278 _tmp39_ = FALSE;
1279 #line 1280 "tracker-store.c"
1280 }
1281 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1282 _tmp45_ = _tmp39_;
1283 #line 199 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1284 if (_tmp45_) {
1285 #line 1286 "tracker-store.c"
1286 GSourceFunc _tmp46_;
1287 void* _tmp46__target;
1288 #line 200 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1289 _tmp46_ = tracker_store_active_callback;
1290 #line 200 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1291 _tmp46__target = tracker_store_active_callback_target;
1292 #line 200 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1293 _tmp46_ (_tmp46__target);
1294 #line 1295 "tracker-store.c"
1295 }
1296 #line 203 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1297 tracker_store_sched ();
1298 #line 205 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1299 result = FALSE;
1300 #line 205 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1301 return result;
1302 #line 1303 "tracker-store.c"
1303 }
1304
1305
1306 static Block8Data* block8_data_ref (Block8Data* _data8_) {
1307 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1308 g_atomic_int_inc (&_data8_->_ref_count_);
1309 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1310 return _data8_;
1311 #line 1312 "tracker-store.c"
1312 }
1313
1314
1315 static void block8_data_unref (void * _userdata_) {
1316 Block8Data* _data8_;
1317 _data8_ = (Block8Data*) _userdata_;
1318 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1319 if (g_atomic_int_dec_and_test (&_data8_->_ref_count_)) {
1320 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1321 _tracker_store_task_unref0 (_data8_->task);
1322 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1323 g_slice_free (Block8Data, _data8_);
1324 #line 1325 "tracker-store.c"
1325 }
1326 }
1327
1328
1329 static gpointer _g_object_ref0 (gpointer self) {
1330 #line 217 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1331 return self ? g_object_ref (self) : NULL;
1332 #line 1333 "tracker-store.c"
1333 }
1334
1335
1336 static void _tracker_store_wal_hook_tracker_db_wal_callback (gint n_pages) {
1337 #line 218 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1338 tracker_store_wal_hook (n_pages);
1339 #line 1340 "tracker-store.c"
1340 }
1341
1342
1343 static gboolean __lambda3_ (Block8Data* _data8_) {
1344 gboolean result = FALSE;
1345 TrackerStoreTask* _tmp0_;
1346 #line 246 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1347 _tmp0_ = _data8_->task;
1348 #line 246 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1349 tracker_store_task_finish_cb (_tmp0_);
1350 #line 247 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1351 result = FALSE;
1352 #line 247 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1353 return result;
1354 #line 1355 "tracker-store.c"
1355 }
1356
1357
1358 static gboolean ___lambda3__gsource_func (gpointer self) {
1359 gboolean result;
1360 result = __lambda3_ (self);
1361 #line 245 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1362 return result;
1363 #line 1364 "tracker-store.c"
1364 }
1365
1366
1367 static void tracker_store_pool_dispatch_cb (TrackerStoreTask* task) {
(emitted by gcc) 1368 Block8Data* _data8_;
1369 TrackerStoreTask* _tmp0_;
1370 TrackerStoreTask* _tmp1_;
1371 GError * _inner_error_ = NULL;
1372 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1373 g_return_if_fail (task != NULL);
1374 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1375 _data8_ = g_slice_new0 (Block8Data);
1376 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1377 _data8_->_ref_count_ = 1;
1378 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1379 _tmp0_ = task;
1380 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1381 _tmp1_ = _tracker_store_task_ref0 (_tmp0_);
1382 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1383 _tracker_store_task_unref0 (_data8_->task);
1384 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1385 _data8_->task = _tmp1_;
1386 #line 1387 "tracker-store.c"
1387 {
1388 TrackerStoreTask* _tmp2_;
1389 TrackerStoreTaskType _tmp3_;
1390 #line 210 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1391 _tmp2_ = _data8_->task;
1392 #line 210 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1393 _tmp3_ = _tmp2_->type;
1394 #line 210 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1395 if (_tmp3_ == TRACKER_STORE_TASK_TYPE_QUERY) {
1396 #line 1397 "tracker-store.c"
1397 TrackerStoreTask* _tmp4_;
1398 TrackerStoreQueryTask* _tmp5_;
1399 TrackerStoreQueryTask* query_task;
1400 TrackerStoreQueryTask* _tmp6_;
1401 const gchar* _tmp7_;
1402 TrackerDBCursor* _tmp8_ = NULL;
1403 TrackerDBCursor* cursor;
1404 TrackerStoreQueryTask* _tmp9_;
1405 TrackerStoreSparqlQueryInThread _tmp10_;
1406 void* _tmp10__target;
1407 TrackerDBCursor* _tmp11_;
1408 #line 211 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1409 _tmp4_ = _data8_->task;
1410 #line 211 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1411 _tmp5_ = _tracker_store_task_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TRACKER_STORE_TYPE_QUERY_TASK, TrackerStoreQueryTask));
1412 #line 211 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1413 query_task = _tmp5_;
1414 #line 213 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1415 _tmp6_ = query_task;
1416 #line 213 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1417 _tmp7_ = _tmp6_->query;
1418 #line 213 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1419 _tmp8_ = tracker_data_query_sparql_cursor (_tmp7_, &_inner_error_);
1420 #line 213 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1421 cursor = _tmp8_;
1422 #line 213 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1423 if (_inner_error_ != NULL) {
1424 #line 213 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1425 _tracker_store_task_unref0 (query_task);
1426 #line 1427 "tracker-store.c"
1427 goto __catch21_g_error;
1428 }
1429 #line 215 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1430 _tmp9_ = query_task;
1431 #line 215 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1432 _tmp10_ = _tmp9_->in_thread;
1433 #line 215 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1434 _tmp10__target = _tmp9_->in_thread_target;
1435 #line 215 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1436 _tmp11_ = cursor;
1437 #line 215 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1438 _tmp10_ (_tmp11_, _tmp10__target, &_inner_error_);
1439 #line 215 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1440 if (_inner_error_ != NULL) {
1441 #line 215 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1442 _g_object_unref0 (cursor);
1443 #line 215 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1444 _tracker_store_task_unref0 (query_task);
1445 #line 1446 "tracker-store.c"
1446 goto __catch21_g_error;
1447 }
1448 #line 210 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1449 _g_object_unref0 (cursor);
1450 #line 210 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1451 _tracker_store_task_unref0 (query_task);
1452 #line 1453 "tracker-store.c"
1453 } else {
1454 TrackerDBInterface* _tmp12_ = NULL;
1455 TrackerDBInterface* _tmp13_;
1456 TrackerDBInterface* iface;
1457 TrackerDBInterface* _tmp14_;
1458 TrackerStoreTask* _tmp15_;
1459 TrackerStoreTaskType _tmp16_;
1460 #line 217 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1461 _tmp12_ = tracker_db_manager_get_db_interface ();
1462 #line 217 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1463 _tmp13_ = _g_object_ref0 (_tmp12_);
1464 #line 217 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1465 iface = _tmp13_;
1466 #line 218 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1467 _tmp14_ = iface;
1468 #line 218 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1469 tracker_db_interface_sqlite_wal_hook (_tmp14_, _tracker_store_wal_hook_tracker_db_wal_callback);
1470 #line 220 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1471 _tmp15_ = _data8_->task;
1472 #line 220 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1473 _tmp16_ = _tmp15_->type;
1474 #line 220 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1475 if (_tmp16_ == TRACKER_STORE_TASK_TYPE_UPDATE) {
1476 #line 1477 "tracker-store.c"
1477 TrackerStoreTask* _tmp17_;
1478 TrackerStoreUpdateTask* _tmp18_;
1479 TrackerStoreUpdateTask* update_task;
1480 TrackerStoreUpdateTask* _tmp19_;
1481 const gchar* _tmp20_;
1482 #line 221 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1483 _tmp17_ = _data8_->task;
1484 #line 221 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1485 _tmp18_ = _tracker_store_task_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, TRACKER_STORE_TYPE_UPDATE_TASK, TrackerStoreUpdateTask));
1486 #line 221 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1487 update_task = _tmp18_;
1488 #line 223 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1489 _tmp19_ = update_task;
1490 #line 223 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1491 _tmp20_ = _tmp19_->query;
1492 #line 223 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1493 tracker_data_update_sparql (_tmp20_, &_inner_error_);
1494 #line 223 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1495 if (_inner_error_ != NULL) {
1496 #line 223 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1497 _tracker_store_task_unref0 (update_task);
1498 #line 223 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1499 _g_object_unref0 (iface);
1500 #line 1501 "tracker-store.c"
1501 goto __catch21_g_error;
1502 }
1503 #line 220 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1504 _tracker_store_task_unref0 (update_task);
1505 #line 1506 "tracker-store.c"
1506 } else {
1507 TrackerStoreTask* _tmp21_;
1508 TrackerStoreTaskType _tmp22_;
1509 #line 224 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1510 _tmp21_ = _data8_->task;
1511 #line 224 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1512 _tmp22_ = _tmp21_->type;
1513 #line 224 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1514 if (_tmp22_ == TRACKER_STORE_TASK_TYPE_UPDATE_BLANK) {
1515 #line 1516 "tracker-store.c"
1516 TrackerStoreTask* _tmp23_;
1517 TrackerStoreUpdateTask* _tmp24_;
1518 TrackerStoreUpdateTask* update_task;
1519 TrackerStoreUpdateTask* _tmp25_;
1520 const gchar* _tmp26_;
1521 GVariant* _tmp27_ = NULL;
1522 GVariant* _tmp28_;
1523 TrackerStoreUpdateTask* _tmp29_;
1524 #line 225 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1525 _tmp23_ = _data8_->task;
1526 #line 225 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1527 _tmp24_ = _tracker_store_task_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp23_, TRACKER_STORE_TYPE_UPDATE_TASK, TrackerStoreUpdateTask));
1528 #line 225 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1529 update_task = _tmp24_;
1530 #line 227 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1531 _tmp25_ = update_task;
1532 #line 227 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1533 _tmp26_ = _tmp25_->query;
1534 #line 227 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1535 _tmp27_ = tracker_data_update_sparql_blank (_tmp26_, &_inner_error_);
1536 #line 227 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1537 _tmp28_ = _tmp27_;
1538 #line 227 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1539 if (_inner_error_ != NULL) {
1540 #line 227 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1541 _tracker_store_task_unref0 (update_task);
1542 #line 227 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1543 _g_object_unref0 (iface);
1544 #line 1545 "tracker-store.c"
1545 goto __catch21_g_error;
1546 }
1547 #line 227 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1548 _tmp29_ = update_task;
1549 #line 227 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1550 _g_variant_unref0 (_tmp29_->blank_nodes);
1551 #line 227 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1552 _tmp29_->blank_nodes = _tmp28_;
1553 #line 224 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1554 _tracker_store_task_unref0 (update_task);
1555 #line 1556 "tracker-store.c"
1556 } else {
1557 TrackerStoreTask* _tmp30_;
1558 TrackerStoreTaskType _tmp31_;
1559 #line 228 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1560 _tmp30_ = _data8_->task;
1561 #line 228 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1562 _tmp31_ = _tmp30_->type;
1563 #line 228 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1564 if (_tmp31_ == TRACKER_STORE_TASK_TYPE_TURTLE) {
1565 #line 1566 "tracker-store.c"
1566 TrackerStoreTask* _tmp32_;
1567 TrackerStoreTurtleTask* _tmp33_;
1568 TrackerStoreTurtleTask* turtle_task;
1569 TrackerStoreTurtleTask* _tmp34_;
1570 const gchar* _tmp35_;
1571 GFile* _tmp36_ = NULL;
1572 GFile* file;
1573 #line 229 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1574 _tmp32_ = _data8_->task;
1575 #line 229 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1576 _tmp33_ = _tracker_store_task_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp32_, TRACKER_STORE_TYPE_TURTLE_TASK, TrackerStoreTurtleTask));
1577 #line 229 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1578 turtle_task = _tmp33_;
1579 #line 231 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1580 _tmp34_ = turtle_task;
1581 #line 231 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1582 _tmp35_ = _tmp34_->path;
1583 #line 231 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1584 _tmp36_ = g_file_new_for_path (_tmp35_);
1585 #line 231 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1586 file = _tmp36_;
1587 #line 233 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1588 tracker_events_freeze ();
1589 #line 1590 "tracker-store.c"
1590 {
1591 GFile* _tmp37_;
1592 #line 235 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1593 _tmp37_ = file;
1594 #line 235 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1595 tracker_data_load_turtle_file (_tmp37_, &_inner_error_);
1596 #line 235 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1597 if (_inner_error_ != NULL) {
1598 #line 1599 "tracker-store.c"
1599 goto __finally22;
1600 }
1601 }
1602 __finally22:
1603 {
1604 #line 237 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1605 tracker_events_reset_pending ();
1606 #line 1607 "tracker-store.c"
1607 }
1608 #line 234 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1609 if (_inner_error_ != NULL) {
1610 #line 234 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1611 _g_object_unref0 (file);
1612 #line 234 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1613 _tracker_store_task_unref0 (turtle_task);
1614 #line 234 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1615 _g_object_unref0 (iface);
1616 #line 1617 "tracker-store.c"
1617 goto __catch21_g_error;
1618 }
1619 #line 228 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1620 _g_object_unref0 (file);
1621 #line 228 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1622 _tracker_store_task_unref0 (turtle_task);
1623 #line 1624 "tracker-store.c"
1624 }
1625 }
1626 }
1627 #line 210 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1628 _g_object_unref0 (iface);
1629 #line 1630 "tracker-store.c"
1630 }
1631 }
1632 goto __finally21;
1633 __catch21_g_error:
1634 {
1635 GError* e = NULL;
1636 TrackerStoreTask* _tmp38_;
1637 GError* _tmp39_;
1638 GError* _tmp40_;
1639 #line 209 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1640 e = _inner_error_;
1641 #line 209 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1642 _inner_error_ = NULL;
1643 #line 242 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1644 _tmp38_ = _data8_->task;
1645 #line 242 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1646 _tmp39_ = e;
1647 #line 242 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1648 _tmp40_ = _g_error_copy0 (_tmp39_);
1649 #line 242 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1650 _g_error_free0 (_tmp38_->error);
1651 #line 242 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1652 _tmp38_->error = _tmp40_;
1653 #line 209 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1654 _g_error_free0 (e);
1655 #line 1656 "tracker-store.c"
1656 }
1657 __finally21:
1658 #line 209 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1659 if (_inner_error_ != NULL) {
1660 #line 209 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1661 block8_data_unref (_data8_);
1662 #line 209 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1663 _data8_ = NULL;
1664 #line 209 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1665 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
1666 #line 209 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1667 g_clear_error (&_inner_error_);
1668 #line 209 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1669 return;
1670 #line 1671 "tracker-store.c"
1671 }
1672 #line 245 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1673 g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, ___lambda3__gsource_func, block8_data_ref (_data8_), block8_data_unref);
1674 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1675 block8_data_unref (_data8_);
1676 #line 208 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1677 _data8_ = NULL;
1678 #line 1679 "tracker-store.c"
1679 }
1680
1681
1682 void tracker_store_wal_checkpoint (void) {
1683 GError * _inner_error_ = NULL;
1684 {
1685 TrackerDBInterface* _tmp0_ = NULL;
1686 TrackerDBInterface* _tmp1_;
1687 TrackerDBInterface* iface;
1688 #line 253 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1689 g_debug ("Checkpointing database...");
1690 #line 254 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1691 _tmp0_ = tracker_db_manager_get_db_interface ();
1692 #line 254 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1693 _tmp1_ = _g_object_ref0 (_tmp0_);
1694 #line 254 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1695 iface = _tmp1_;
1696 #line 255 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1697 tracker_db_interface_execute_query (iface, &_inner_error_, "PRAGMA wal_checkpoint");
1698 #line 255 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1699 if (_inner_error_ != NULL) {
1700 #line 255 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1701 _g_object_unref0 (iface);
1702 #line 1703 "tracker-store.c"
1703 goto __catch23_g_error;
1704 }
1705 #line 256 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1706 g_debug ("Checkpointing complete...");
1707 #line 252 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1708 _g_object_unref0 (iface);
1709 #line 1710 "tracker-store.c"
1710 }
1711 goto __finally23;
1712 __catch23_g_error:
1713 {
1714 GError* e = NULL;
1715 GError* _tmp2_;
1716 const gchar* _tmp3_;
1717 #line 252 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1718 e = _inner_error_;
1719 #line 252 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1720 _inner_error_ = NULL;
1721 #line 258 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1722 _tmp2_ = e;
1723 #line 258 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1724 _tmp3_ = _tmp2_->message;
1725 #line 258 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1726 g_warning ("%s", _tmp3_);
1727 #line 252 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1728 _g_error_free0 (e);
1729 #line 1730 "tracker-store.c"
1730 }
1731 __finally23:
1732 #line 252 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1733 if (_inner_error_ != NULL) {
1734 #line 252 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1735 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
1736 #line 252 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1737 g_clear_error (&_inner_error_);
1738 #line 252 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1739 return;
1740 #line 1741 "tracker-store.c"
1741 }
1742 }
1743
1744
1745 static void tracker_store_wal_hook (gint n_pages) {
1746 gint _tmp0_;
1747 gint _tmp1_;
1748 GError * _inner_error_ = NULL;
1749 #line 267 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1750 _tmp0_ = n_pages;
1751 #line 267 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1752 g_debug ("WAL: %d pages", _tmp0_);
1753 #line 269 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1754 _tmp1_ = n_pages;
1755 #line 269 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1756 if (_tmp1_ >= 10000) {
1757 #line 272 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1758 tracker_store_wal_checkpoint ();
1759 #line 1760 "tracker-store.c"
1760 } else {
1761 gint _tmp2_;
1762 #line 273 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1763 _tmp2_ = n_pages;
1764 #line 273 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1765 if (_tmp2_ >= 1000) {
1766 #line 1767 "tracker-store.c"
1767 gboolean _tmp3_ = FALSE;
1768 #line 274 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1769 _tmp3_ = g_atomic_int_compare_and_exchange ((volatile gint *) (&tracker_store_checkpointing), 0, 1);
1770 #line 274 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1771 if (_tmp3_) {
1772 #line 1773 "tracker-store.c"
1773 {
1774 GThreadPool* _tmp4_;
1775 #line 277 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1776 _tmp4_ = tracker_store_checkpoint_pool;
1777 #line 277 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1778 g_thread_pool_push (_tmp4_, (gpointer) ((gintptr) TRUE), &_inner_error_);
1779 #line 277 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1780 if (_inner_error_ != NULL) {
1781 #line 1782 "tracker-store.c"
1782 goto __catch24_g_error;
1783 }
1784 }
1785 goto __finally24;
1786 __catch24_g_error:
1787 {
1788 GError* e = NULL;
1789 GError* _tmp5_;
1790 const gchar* _tmp6_;
1791 #line 276 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1792 e = _inner_error_;
1793 #line 276 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1794 _inner_error_ = NULL;
1795 #line 279 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1796 _tmp5_ = e;
1797 #line 279 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1798 _tmp6_ = _tmp5_->message;
1799 #line 279 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1800 g_warning ("%s", _tmp6_);
1801 #line 280 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1802 g_atomic_int_set ((volatile gint *) (&tracker_store_checkpointing), 0);
1803 #line 276 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1804 _g_error_free0 (e);
1805 #line 1806 "tracker-store.c"
1806 }
1807 __finally24:
1808 #line 276 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1809 if (_inner_error_ != NULL) {
1810 #line 276 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1811 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
1812 #line 276 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1813 g_clear_error (&_inner_error_);
1814 #line 276 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1815 return;
1816 #line 1817 "tracker-store.c"
1817 }
1818 }
1819 }
1820 }
1821 }
1822
1823
1824 static void tracker_store_checkpoint_dispatch_cb (gboolean task) {
(emitted by gcc) 1825 #line 289 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1826 tracker_store_wal_checkpoint ();
1827 #line 290 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1828 g_atomic_int_set ((volatile gint *) (&tracker_store_checkpointing), 0);
1829 #line 1830 "tracker-store.c"
1830 }
1831
1832
1833 static void _tracker_store_task_unref0_ (gpointer var) {
1834 #line 301 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1835 (var == NULL) ? NULL : (var = (tracker_store_task_unref (var), NULL));
1836 #line 1837 "tracker-store.c"
1837 }
1838
1839
1840 static void _g_queue_free__tracker_store_task_unref0_ (GQueue* self) {
1841 #line 304 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1842 g_queue_foreach (self, (GFunc) _tracker_store_task_unref0_, NULL);
1843 #line 304 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1844 g_queue_free (self);
1845 #line 1846 "tracker-store.c"
1846 }
1847
1848
1849 static void _tracker_store_pool_dispatch_cb_gfunc (gconstpointer data, gpointer self) {
1850 #line 309 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1851 tracker_store_pool_dispatch_cb (data);
1852 #line 1853 "tracker-store.c"
1853 }
1854
1855
1856 static void _tracker_store_checkpoint_dispatch_cb_gfunc (gconstpointer data, gpointer self) {
1857 #line 311 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1858 tracker_store_checkpoint_dispatch_cb (data);
1859 #line 1860 "tracker-store.c"
1860 }
1861
1862
1863 void tracker_store_init (void) {
1864 const gchar* _tmp0_ = NULL;
1865 gchar* _tmp1_;
1866 gchar* max_task_time_env;
1867 const gchar* _tmp2_;
1868 GPtrArray* _tmp5_;
1869 GError * _inner_error_ = NULL;
1870 #line 294 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1871 _tmp0_ = g_getenv ("TRACKER_STORE_MAX_TASK_TIME");
1872 #line 294 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1873 _tmp1_ = g_strdup (_tmp0_);
1874 #line 294 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1875 max_task_time_env = _tmp1_;
1876 #line 295 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1877 _tmp2_ = max_task_time_env;
1878 #line 295 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1879 if (_tmp2_ != NULL) {
1880 #line 1881 "tracker-store.c"
1881 const gchar* _tmp3_;
1882 gint _tmp4_ = 0;
1883 #line 296 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1884 _tmp3_ = max_task_time_env;
1885 #line 296 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1886 _tmp4_ = atoi (_tmp3_);
1887 #line 296 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1888 tracker_store_max_task_time = _tmp4_;
1889 #line 1890 "tracker-store.c"
1890 } else {
1891 #line 298 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1892 tracker_store_max_task_time = TRACKER_STORE_MAX_TASK_TIME;
1893 #line 1894 "tracker-store.c"
1894 }
1895 #line 301 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1896 _tmp5_ = g_ptr_array_new_with_free_func (_tracker_store_task_unref0_);
1897 #line 301 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1898 _g_ptr_array_unref0 (tracker_store_running_tasks);
1899 #line 301 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1900 tracker_store_running_tasks = _tmp5_;
1901 #line 1902 "tracker-store.c"
1902 {
1903 gint i;
1904 #line 303 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1905 i = 0;
1906 #line 1907 "tracker-store.c"
1907 {
1908 gboolean _tmp6_;
1909 #line 303 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1910 _tmp6_ = TRUE;
1911 #line 303 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1912 while (TRUE) {
1913 #line 1914 "tracker-store.c"
1914 gboolean _tmp7_;
1915 gint _tmp9_;
1916 gint _tmp10_;
1917 GQueue* _tmp11_;
1918 GQueue* _tmp12_;
1919 gint _tmp13_;
1920 GQueue* _tmp14_;
1921 GQueue* _tmp15_;
(emitted by gcc) 1922 #line 303 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1923 _tmp7_ = _tmp6_;
1924 #line 303 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1925 if (!_tmp7_) {
1926 #line 1927 "tracker-store.c"
1927 gint _tmp8_;
1928 #line 303 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1929 _tmp8_ = i;
1930 #line 303 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1931 i = _tmp8_ + 1;
1932 #line 1933 "tracker-store.c"
1933 }
1934 #line 303 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1935 _tmp6_ = FALSE;
1936 #line 303 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1937 _tmp9_ = i;
1938 #line 303 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1939 if (!(_tmp9_ < ((gint) TRACKER_STORE_PRIORITY_N_PRIORITIES))) {
1940 #line 303 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1941 break;
1942 #line 1943 "tracker-store.c"
1943 }
1944 #line 304 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1945 _tmp10_ = i;
1946 #line 304 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1947 _tmp11_ = g_queue_new ();
1948 #line 304 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1949 __g_queue_free__tracker_store_task_unref0_0 (tracker_store_query_queues[_tmp10_]);
1950 #line 304 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1951 tracker_store_query_queues[_tmp10_] = _tmp11_;
1952 #line 304 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1953 _tmp12_ = tracker_store_query_queues[_tmp10_];
(emitted by clang-analyzer)TODO: a detailed trace is available in the data model (not yet rendered in this report)
1954 #line 305 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1955 _tmp13_ = i;
1956 #line 305 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1957 _tmp14_ = g_queue_new ();
1958 #line 305 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1959 __g_queue_free__tracker_store_task_unref0_0 (tracker_store_update_queues[_tmp13_]);
1960 #line 305 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1961 tracker_store_update_queues[_tmp13_] = _tmp14_;
1962 #line 305 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1963 _tmp15_ = tracker_store_update_queues[_tmp13_];
(emitted by clang-analyzer)TODO: a detailed trace is available in the data model (not yet rendered in this report)
1964 #line 1965 "tracker-store.c"
1965 }
1966 }
1967 }
1968 {
1969 GThreadPool* _tmp16_;
1970 GThreadPool* _tmp17_;
1971 GThreadPool* _tmp18_;
1972 GThreadPool* _tmp19_;
1973 GThreadPool* _tmp20_;
1974 GThreadPool* _tmp21_;
1975 #line 309 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1976 _tmp16_ = g_thread_pool_new (_tracker_store_pool_dispatch_cb_gfunc, NULL, 1, TRUE, &_inner_error_);
1977 #line 309 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1978 _tmp17_ = _tmp16_;
1979 #line 309 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1980 if (_inner_error_ != NULL) {
1981 #line 1982 "tracker-store.c"
1982 goto __catch25_g_error;
1983 }
1984 #line 309 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1985 _g_thread_pool_free0 (tracker_store_update_pool);
1986 #line 309 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1987 tracker_store_update_pool = _tmp17_;
1988 #line 310 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1989 _tmp18_ = g_thread_pool_new (_tracker_store_pool_dispatch_cb_gfunc, NULL, TRACKER_STORE_MAX_CONCURRENT_QUERIES, TRUE, &_inner_error_);
1990 #line 310 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1991 _tmp19_ = _tmp18_;
1992 #line 310 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1993 if (_inner_error_ != NULL) {
1994 #line 1995 "tracker-store.c"
1995 goto __catch25_g_error;
1996 }
1997 #line 310 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
1998 _g_thread_pool_free0 (tracker_store_query_pool);
1999 #line 310 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2000 tracker_store_query_pool = _tmp19_;
2001 #line 311 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2002 _tmp20_ = g_thread_pool_new (_tracker_store_checkpoint_dispatch_cb_gfunc, NULL, 1, TRUE, &_inner_error_);
2003 #line 311 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2004 _tmp21_ = _tmp20_;
2005 #line 311 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2006 if (_inner_error_ != NULL) {
2007 #line 2008 "tracker-store.c"
2008 goto __catch25_g_error;
2009 }
2010 #line 311 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2011 _g_thread_pool_free0 (tracker_store_checkpoint_pool);
2012 #line 311 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2013 tracker_store_checkpoint_pool = _tmp21_;
2014 #line 2015 "tracker-store.c"
2015 }
2016 goto __finally25;
2017 __catch25_g_error:
2018 {
2019 GError* e = NULL;
2020 GError* _tmp22_;
2021 const gchar* _tmp23_;
2022 #line 308 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2023 e = _inner_error_;
2024 #line 308 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2025 _inner_error_ = NULL;
2026 #line 313 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2027 _tmp22_ = e;
2028 #line 313 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2029 _tmp23_ = _tmp22_->message;
2030 #line 313 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2031 g_warning ("%s", _tmp23_);
2032 #line 308 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2033 _g_error_free0 (e);
2034 #line 2035 "tracker-store.c"
2035 }
2036 __finally25:
2037 #line 308 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2038 if (_inner_error_ != NULL) {
2039 #line 308 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2040 _g_free0 (max_task_time_env);
2041 #line 308 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2042 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
2043 #line 308 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2044 g_clear_error (&_inner_error_);
2045 #line 308 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2046 return;
2047 #line 2048 "tracker-store.c"
2048 }
2049 #line 319 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2050 g_thread_pool_set_max_idle_time ((guint) (15 * 1000));
2051 #line 320 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2052 g_thread_pool_set_max_unused_threads (2);
2053 #line 293 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2054 _g_free0 (max_task_time_env);
2055 #line 2056 "tracker-store.c"
2056 }
2057
2058
2059 void tracker_store_shutdown (void) {
2060 #line 324 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2061 _g_thread_pool_free0 (tracker_store_query_pool);
2062 #line 324 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2063 tracker_store_query_pool = NULL;
2064 #line 325 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2065 _g_thread_pool_free0 (tracker_store_update_pool);
2066 #line 325 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2067 tracker_store_update_pool = NULL;
2068 #line 326 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2069 _g_thread_pool_free0 (tracker_store_checkpoint_pool);
2070 #line 326 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2071 tracker_store_checkpoint_pool = NULL;
2072 #line 2073 "tracker-store.c"
2073 {
2074 gint i;
2075 #line 328 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2076 i = 0;
2077 #line 2078 "tracker-store.c"
2078 {
2079 gboolean _tmp0_;
2080 #line 328 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2081 _tmp0_ = TRUE;
2082 #line 328 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2083 while (TRUE) {
2084 #line 2085 "tracker-store.c"
2085 gboolean _tmp1_;
2086 gint _tmp3_;
2087 gint _tmp4_;
2088 GQueue* _tmp5_;
2089 gint _tmp6_;
2090 GQueue* _tmp7_;
(emitted by gcc) 2091 #line 328 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2092 _tmp1_ = _tmp0_;
2093 #line 328 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2094 if (!_tmp1_) {
2095 #line 2096 "tracker-store.c"
2096 gint _tmp2_;
2097 #line 328 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2098 _tmp2_ = i;
2099 #line 328 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2100 i = _tmp2_ + 1;
2101 #line 2102 "tracker-store.c"
2102 }
2103 #line 328 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2104 _tmp0_ = FALSE;
2105 #line 328 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2106 _tmp3_ = i;
2107 #line 328 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2108 if (!(_tmp3_ < ((gint) TRACKER_STORE_PRIORITY_N_PRIORITIES))) {
2109 #line 328 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2110 break;
2111 #line 2112 "tracker-store.c"
2112 }
2113 #line 329 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2114 _tmp4_ = i;
2115 #line 329 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2116 __g_queue_free__tracker_store_task_unref0_0 (tracker_store_query_queues[_tmp4_]);
2117 #line 329 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2118 tracker_store_query_queues[_tmp4_] = NULL;
2119 #line 329 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2120 _tmp5_ = tracker_store_query_queues[_tmp4_];
(emitted by clang-analyzer)TODO: a detailed trace is available in the data model (not yet rendered in this report)
2121 #line 330 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2122 _tmp6_ = i;
2123 #line 330 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2124 __g_queue_free__tracker_store_task_unref0_0 (tracker_store_update_queues[_tmp6_]);
2125 #line 330 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2126 tracker_store_update_queues[_tmp6_] = NULL;
2127 #line 330 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2128 _tmp7_ = tracker_store_update_queues[_tmp6_];
(emitted by clang-analyzer)TODO: a detailed trace is available in the data model (not yet rendered in this report)
2129 #line 2130 "tracker-store.c"
2130 }
2131 }
2132 }
2133 }
2134
2135
2136 static void tracker_store_sparql_query_data_free (gpointer _data) {
2137 TrackerStoreSparqlQueryData* _data_;
2138 _data_ = _data;
2139 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2140 _g_free0 (_data_->sparql);
2141 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2142 _g_free0 (_data_->client_id);
2143 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2144 g_slice_free (TrackerStoreSparqlQueryData, _data_);
2145 #line 2146 "tracker-store.c"
2146 }
2147
2148
2149 void tracker_store_sparql_query (const gchar* sparql, TrackerStorePriority priority, TrackerStoreSparqlQueryInThread in_thread, void* in_thread_target, const gchar* client_id, GAsyncReadyCallback _callback_, gpointer _user_data_) {
2150 TrackerStoreSparqlQueryData* _data_;
2151 const gchar* _tmp0_;
2152 gchar* _tmp1_;
2153 TrackerStorePriority _tmp2_;
2154 TrackerStoreSparqlQueryInThread _tmp3_;
2155 void* _tmp3__target;
2156 const gchar* _tmp4_;
2157 gchar* _tmp5_;
2158 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2159 _data_ = g_slice_new0 (TrackerStoreSparqlQueryData);
2160 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2161 _data_->_async_result = g_simple_async_result_new (NULL, _callback_, _user_data_, tracker_store_sparql_query);
2162 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2163 g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, tracker_store_sparql_query_data_free);
2164 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2165 _tmp0_ = sparql;
2166 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2167 _tmp1_ = g_strdup (_tmp0_);
2168 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2169 _g_free0 (_data_->sparql);
2170 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2171 _data_->sparql = _tmp1_;
2172 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2173 _tmp2_ = priority;
2174 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2175 _data_->priority = _tmp2_;
2176 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2177 _tmp3_ = in_thread;
2178 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2179 _tmp3__target = in_thread_target;
2180 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2181 _data_->in_thread = _tmp3_;
2182 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2183 _data_->in_thread_target = _tmp3__target;
2184 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2185 _tmp4_ = client_id;
2186 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2187 _tmp5_ = g_strdup (_tmp4_);
2188 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2189 _g_free0 (_data_->client_id);
2190 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2191 _data_->client_id = _tmp5_;
2192 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2193 tracker_store_sparql_query_co (_data_);
2194 #line 2195 "tracker-store.c"
2195 }
2196
2197
2198 void tracker_store_sparql_query_finish (GAsyncResult* _res_, GError** error) {
2199 TrackerStoreSparqlQueryData* _data_;
(emitted by gcc) 2200 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2201 if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (_res_), error)) {
2202 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2203 return;
2204 #line 2205 "tracker-store.c"
2205 }
2206 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2207 _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
(emitted by clang-analyzer)TODO: a detailed trace is available in the data model (not yet rendered in this report)
2208 #line 2209 "tracker-store.c"
2209 }
2210
2211
2212 static gboolean _tracker_store_sparql_query_co_gsource_func (gpointer self) {
2213 gboolean result;
2214 result = tracker_store_sparql_query_co (self);
2215 #line 340 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2216 return result;
2217 #line 2218 "tracker-store.c"
2218 }
2219
2220
2221 static gboolean tracker_store_sparql_query_co (TrackerStoreSparqlQueryData* _data_) {
2222 #line 334 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2223 switch (_data_->_state_) {
2224 #line 334 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2225 case 0:
2226 #line 2227 "tracker-store.c"
2227 goto _state_0;
2228 #line 334 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2229 case 1:
2230 #line 2231 "tracker-store.c"
2231 goto _state_1;
2232 default:
2233 #line 334 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2234 g_assert_not_reached ();
2235 #line 2236 "tracker-store.c"
2236 }
2237 _state_0:
2238 #line 335 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2239 _data_->_tmp0_ = tracker_store_query_task_new ();
2240 #line 335 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2241 _data_->task = _data_->_tmp0_;
2242 #line 336 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2243 _data_->_tmp1_ = _data_->task;
2244 #line 336 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2245 ((TrackerStoreTask*) _data_->_tmp1_)->type = TRACKER_STORE_TASK_TYPE_QUERY;
2246 #line 337 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2247 _data_->_tmp2_ = _data_->task;
2248 #line 337 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2249 _data_->_tmp3_ = _data_->sparql;
2250 #line 337 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2251 _data_->_tmp4_ = g_strdup (_data_->_tmp3_);
2252 #line 337 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2253 _g_free0 (_data_->_tmp2_->query);
2254 #line 337 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2255 _data_->_tmp2_->query = _data_->_tmp4_;
2256 #line 338 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2257 _data_->_tmp5_ = _data_->task;
2258 #line 338 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2259 _data_->_tmp6_ = g_cancellable_new ();
2260 #line 338 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2261 _g_object_unref0 (_data_->_tmp5_->cancellable);
2262 #line 338 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2263 _data_->_tmp5_->cancellable = _data_->_tmp6_;
2264 #line 339 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2265 _data_->_tmp7_ = _data_->task;
2266 #line 339 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2267 _data_->_tmp8_ = _data_->in_thread;
2268 #line 339 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2269 _data_->_tmp8__target = _data_->in_thread_target;
2270 #line 339 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2271 _data_->_tmp7_->in_thread = _data_->_tmp8_;
2272 #line 339 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2273 _data_->_tmp7_->in_thread_target = _data_->_tmp8__target;
2274 #line 340 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2275 _data_->_tmp9_ = _data_->task;
2276 #line 340 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2277 (((TrackerStoreTask*) _data_->_tmp9_)->callback_target_destroy_notify == NULL) ? NULL : (((TrackerStoreTask*) _data_->_tmp9_)->callback_target_destroy_notify (((TrackerStoreTask*) _data_->_tmp9_)->callback_target), NULL);
2278 #line 340 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2279 ((TrackerStoreTask*) _data_->_tmp9_)->callback = NULL;
2280 #line 340 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2281 ((TrackerStoreTask*) _data_->_tmp9_)->callback_target = NULL;
2282 #line 340 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2283 ((TrackerStoreTask*) _data_->_tmp9_)->callback_target_destroy_notify = NULL;
2284 #line 340 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2285 ((TrackerStoreTask*) _data_->_tmp9_)->callback = _tracker_store_sparql_query_co_gsource_func;
2286 #line 340 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2287 ((TrackerStoreTask*) _data_->_tmp9_)->callback_target = _data_;
2288 #line 340 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2289 ((TrackerStoreTask*) _data_->_tmp9_)->callback_target_destroy_notify = NULL;
2290 #line 341 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2291 _data_->_tmp10_ = _data_->task;
2292 #line 341 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2293 _data_->_tmp11_ = _data_->client_id;
2294 #line 341 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2295 _data_->_tmp12_ = g_strdup (_data_->_tmp11_);
2296 #line 341 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2297 _g_free0 (((TrackerStoreTask*) _data_->_tmp10_)->client_id);
2298 #line 341 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2299 ((TrackerStoreTask*) _data_->_tmp10_)->client_id = _data_->_tmp12_;
2300 #line 343 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2301 _data_->_tmp13_ = _data_->priority;
2302 #line 343 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2303 _data_->_tmp14_ = tracker_store_query_queues[_data_->_tmp13_];
2304 #line 343 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2305 _data_->_tmp15_ = _data_->task;
2306 #line 343 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2307 _data_->_tmp16_ = _tracker_store_task_ref0 ((TrackerStoreTask*) _data_->_tmp15_);
2308 #line 343 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2309 g_queue_push_tail (_data_->_tmp14_, _data_->_tmp16_);
2310 #line 345 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2311 tracker_store_sched ();
2312 #line 347 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2313 _data_->_state_ = 1;
2314 #line 347 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2315 return FALSE;
2316 #line 2317 "tracker-store.c"
2317 _state_1:
2318 ;
2319 #line 349 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2320 _data_->_tmp17_ = _data_->task;
2321 #line 349 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2322 _data_->_tmp18_ = ((TrackerStoreTask*) _data_->_tmp17_)->error;
2323 #line 349 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2324 if (_data_->_tmp18_ != NULL) {
2325 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2326 _data_->_tmp19_ = _data_->task;
2327 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2328 _data_->_tmp20_ = ((TrackerStoreTask*) _data_->_tmp19_)->error;
2329 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2330 _data_->_tmp21_ = _g_error_copy0 (_data_->_tmp20_);
2331 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2332 _data_->_inner_error_ = _data_->_tmp21_;
2333 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2334 g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
2335 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2336 g_error_free (_data_->_inner_error_);
2337 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2338 _tracker_store_task_unref0 (_data_->task);
2339 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2340 if (_data_->_state_ == 0) {
2341 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2342 g_simple_async_result_complete_in_idle (_data_->_async_result);
2343 #line 2344 "tracker-store.c"
2344 } else {
2345 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2346 g_simple_async_result_complete (_data_->_async_result);
2347 #line 2348 "tracker-store.c"
2348 }
2349 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2350 g_object_unref (_data_->_async_result);
2351 #line 350 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2352 return FALSE;
2353 #line 2354 "tracker-store.c"
2354 }
2355 #line 334 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2356 _tracker_store_task_unref0 (_data_->task);
2357 #line 334 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2358 if (_data_->_state_ == 0) {
2359 #line 334 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2360 g_simple_async_result_complete_in_idle (_data_->_async_result);
2361 #line 2362 "tracker-store.c"
2362 } else {
2363 #line 334 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2364 g_simple_async_result_complete (_data_->_async_result);
2365 #line 2366 "tracker-store.c"
2366 }
2367 #line 334 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2368 g_object_unref (_data_->_async_result);
2369 #line 334 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2370 return FALSE;
2371 #line 2372 "tracker-store.c"
2372 }
2373
2374
2375 static void tracker_store_sparql_update_data_free (gpointer _data) {
2376 TrackerStoreSparqlUpdateData* _data_;
2377 _data_ = _data;
2378 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2379 _g_free0 (_data_->sparql);
2380 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2381 _g_free0 (_data_->client_id);
2382 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2383 g_slice_free (TrackerStoreSparqlUpdateData, _data_);
2384 #line 2385 "tracker-store.c"
2385 }
2386
2387
2388 void tracker_store_sparql_update (const gchar* sparql, TrackerStorePriority priority, const gchar* client_id, GAsyncReadyCallback _callback_, gpointer _user_data_) {
2389 TrackerStoreSparqlUpdateData* _data_;
2390 const gchar* _tmp0_;
2391 gchar* _tmp1_;
2392 TrackerStorePriority _tmp2_;
2393 const gchar* _tmp3_;
2394 gchar* _tmp4_;
2395 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2396 _data_ = g_slice_new0 (TrackerStoreSparqlUpdateData);
2397 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2398 _data_->_async_result = g_simple_async_result_new (NULL, _callback_, _user_data_, tracker_store_sparql_update);
2399 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2400 g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, tracker_store_sparql_update_data_free);
2401 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2402 _tmp0_ = sparql;
2403 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2404 _tmp1_ = g_strdup (_tmp0_);
2405 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2406 _g_free0 (_data_->sparql);
2407 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2408 _data_->sparql = _tmp1_;
2409 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2410 _tmp2_ = priority;
2411 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2412 _data_->priority = _tmp2_;
2413 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2414 _tmp3_ = client_id;
2415 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2416 _tmp4_ = g_strdup (_tmp3_);
2417 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2418 _g_free0 (_data_->client_id);
2419 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2420 _data_->client_id = _tmp4_;
2421 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2422 tracker_store_sparql_update_co (_data_);
2423 #line 2424 "tracker-store.c"
2424 }
2425
2426
2427 void tracker_store_sparql_update_finish (GAsyncResult* _res_, GError** error) {
2428 TrackerStoreSparqlUpdateData* _data_;
(emitted by gcc) 2429 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2430 if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (_res_), error)) {
2431 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2432 return;
2433 #line 2434 "tracker-store.c"
2434 }
2435 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2436 _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
(emitted by clang-analyzer)TODO: a detailed trace is available in the data model (not yet rendered in this report)
2437 #line 2438 "tracker-store.c"
2438 }
2439
2440
2441 static gboolean _tracker_store_sparql_update_co_gsource_func (gpointer self) {
2442 gboolean result;
2443 result = tracker_store_sparql_update_co (self);
2444 #line 359 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2445 return result;
2446 #line 2447 "tracker-store.c"
2447 }
2448
2449
2450 static gboolean tracker_store_sparql_update_co (TrackerStoreSparqlUpdateData* _data_) {
2451 #line 354 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2452 switch (_data_->_state_) {
2453 #line 354 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2454 case 0:
2455 #line 2456 "tracker-store.c"
2456 goto _state_0;
2457 #line 354 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2458 case 1:
2459 #line 2460 "tracker-store.c"
2460 goto _state_1;
2461 default:
2462 #line 354 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2463 g_assert_not_reached ();
2464 #line 2465 "tracker-store.c"
2465 }
2466 _state_0:
2467 #line 355 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2468 _data_->_tmp0_ = tracker_store_update_task_new ();
2469 #line 355 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2470 _data_->task = _data_->_tmp0_;
2471 #line 356 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2472 _data_->_tmp1_ = _data_->task;
2473 #line 356 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2474 ((TrackerStoreTask*) _data_->_tmp1_)->type = TRACKER_STORE_TASK_TYPE_UPDATE;
2475 #line 357 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2476 _data_->_tmp2_ = _data_->task;
2477 #line 357 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2478 _data_->_tmp3_ = _data_->sparql;
2479 #line 357 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2480 _data_->_tmp4_ = g_strdup (_data_->_tmp3_);
2481 #line 357 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2482 _g_free0 (_data_->_tmp2_->query);
2483 #line 357 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2484 _data_->_tmp2_->query = _data_->_tmp4_;
2485 #line 358 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2486 _data_->_tmp5_ = _data_->task;
2487 #line 358 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2488 _data_->_tmp6_ = _data_->priority;
2489 #line 358 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2490 _data_->_tmp5_->priority = _data_->_tmp6_;
2491 #line 359 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2492 _data_->_tmp7_ = _data_->task;
2493 #line 359 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2494 (((TrackerStoreTask*) _data_->_tmp7_)->callback_target_destroy_notify == NULL) ? NULL : (((TrackerStoreTask*) _data_->_tmp7_)->callback_target_destroy_notify (((TrackerStoreTask*) _data_->_tmp7_)->callback_target), NULL);
2495 #line 359 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2496 ((TrackerStoreTask*) _data_->_tmp7_)->callback = NULL;
2497 #line 359 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2498 ((TrackerStoreTask*) _data_->_tmp7_)->callback_target = NULL;
2499 #line 359 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2500 ((TrackerStoreTask*) _data_->_tmp7_)->callback_target_destroy_notify = NULL;
2501 #line 359 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2502 ((TrackerStoreTask*) _data_->_tmp7_)->callback = _tracker_store_sparql_update_co_gsource_func;
2503 #line 359 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2504 ((TrackerStoreTask*) _data_->_tmp7_)->callback_target = _data_;
2505 #line 359 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2506 ((TrackerStoreTask*) _data_->_tmp7_)->callback_target_destroy_notify = NULL;
2507 #line 360 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2508 _data_->_tmp8_ = _data_->task;
2509 #line 360 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2510 _data_->_tmp9_ = _data_->client_id;
2511 #line 360 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2512 _data_->_tmp10_ = g_strdup (_data_->_tmp9_);
2513 #line 360 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2514 _g_free0 (((TrackerStoreTask*) _data_->_tmp8_)->client_id);
2515 #line 360 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2516 ((TrackerStoreTask*) _data_->_tmp8_)->client_id = _data_->_tmp10_;
2517 #line 362 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2518 _data_->_tmp11_ = _data_->priority;
2519 #line 362 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2520 _data_->_tmp12_ = tracker_store_update_queues[_data_->_tmp11_];
2521 #line 362 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2522 _data_->_tmp13_ = _data_->task;
2523 #line 362 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2524 _data_->_tmp14_ = _tracker_store_task_ref0 ((TrackerStoreTask*) _data_->_tmp13_);
2525 #line 362 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2526 g_queue_push_tail (_data_->_tmp12_, _data_->_tmp14_);
2527 #line 364 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2528 tracker_store_sched ();
2529 #line 366 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2530 _data_->_state_ = 1;
2531 #line 366 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2532 return FALSE;
2533 #line 2534 "tracker-store.c"
2534 _state_1:
2535 ;
2536 #line 368 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2537 _data_->_tmp15_ = _data_->task;
2538 #line 368 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2539 _data_->_tmp16_ = ((TrackerStoreTask*) _data_->_tmp15_)->error;
2540 #line 368 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2541 if (_data_->_tmp16_ != NULL) {
2542 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2543 _data_->_tmp17_ = _data_->task;
2544 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2545 _data_->_tmp18_ = ((TrackerStoreTask*) _data_->_tmp17_)->error;
2546 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2547 _data_->_tmp19_ = _g_error_copy0 (_data_->_tmp18_);
2548 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2549 _data_->_inner_error_ = _data_->_tmp19_;
2550 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2551 g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
2552 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2553 g_error_free (_data_->_inner_error_);
2554 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2555 _tracker_store_task_unref0 (_data_->task);
2556 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2557 if (_data_->_state_ == 0) {
2558 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2559 g_simple_async_result_complete_in_idle (_data_->_async_result);
2560 #line 2561 "tracker-store.c"
2561 } else {
2562 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2563 g_simple_async_result_complete (_data_->_async_result);
2564 #line 2565 "tracker-store.c"
2565 }
2566 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2567 g_object_unref (_data_->_async_result);
2568 #line 369 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2569 return FALSE;
2570 #line 2571 "tracker-store.c"
2571 }
2572 #line 354 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2573 _tracker_store_task_unref0 (_data_->task);
2574 #line 354 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2575 if (_data_->_state_ == 0) {
2576 #line 354 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2577 g_simple_async_result_complete_in_idle (_data_->_async_result);
2578 #line 2579 "tracker-store.c"
2579 } else {
2580 #line 354 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2581 g_simple_async_result_complete (_data_->_async_result);
2582 #line 2583 "tracker-store.c"
2583 }
2584 #line 354 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2585 g_object_unref (_data_->_async_result);
2586 #line 354 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2587 return FALSE;
2588 #line 2589 "tracker-store.c"
2589 }
2590
2591
2592 static void tracker_store_sparql_update_blank_data_free (gpointer _data) {
2593 TrackerStoreSparqlUpdateBlankData* _data_;
2594 _data_ = _data;
2595 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2596 _g_free0 (_data_->sparql);
2597 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2598 _g_free0 (_data_->client_id);
2599 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2600 _g_variant_unref0 (_data_->result);
2601 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2602 g_slice_free (TrackerStoreSparqlUpdateBlankData, _data_);
2603 #line 2604 "tracker-store.c"
2604 }
2605
2606
2607 void tracker_store_sparql_update_blank (const gchar* sparql, TrackerStorePriority priority, const gchar* client_id, GAsyncReadyCallback _callback_, gpointer _user_data_) {
2608 TrackerStoreSparqlUpdateBlankData* _data_;
2609 const gchar* _tmp0_;
2610 gchar* _tmp1_;
2611 TrackerStorePriority _tmp2_;
2612 const gchar* _tmp3_;
2613 gchar* _tmp4_;
2614 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2615 _data_ = g_slice_new0 (TrackerStoreSparqlUpdateBlankData);
2616 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2617 _data_->_async_result = g_simple_async_result_new (NULL, _callback_, _user_data_, tracker_store_sparql_update_blank);
2618 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2619 g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, tracker_store_sparql_update_blank_data_free);
2620 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2621 _tmp0_ = sparql;
2622 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2623 _tmp1_ = g_strdup (_tmp0_);
2624 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2625 _g_free0 (_data_->sparql);
2626 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2627 _data_->sparql = _tmp1_;
2628 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2629 _tmp2_ = priority;
2630 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2631 _data_->priority = _tmp2_;
2632 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2633 _tmp3_ = client_id;
2634 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2635 _tmp4_ = g_strdup (_tmp3_);
2636 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2637 _g_free0 (_data_->client_id);
2638 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2639 _data_->client_id = _tmp4_;
2640 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2641 tracker_store_sparql_update_blank_co (_data_);
2642 #line 2643 "tracker-store.c"
2643 }
2644
2645
2646 GVariant* tracker_store_sparql_update_blank_finish (GAsyncResult* _res_, GError** error) {
2647 GVariant* result;
2648 TrackerStoreSparqlUpdateBlankData* _data_;
2649 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2650 if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (_res_), error)) {
2651 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2652 return NULL;
2653 #line 2654 "tracker-store.c"
2654 }
2655 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2656 _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
2657 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2658 result = _data_->result;
2659 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2660 _data_->result = NULL;
2661 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2662 return result;
2663 #line 2664 "tracker-store.c"
2664 }
2665
2666
2667 static gboolean _tracker_store_sparql_update_blank_co_gsource_func (gpointer self) {
2668 gboolean result;
2669 result = tracker_store_sparql_update_blank_co (self);
2670 #line 378 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2671 return result;
2672 #line 2673 "tracker-store.c"
2673 }
2674
2675
2676 static gpointer _g_variant_ref0 (gpointer self) {
2677 #line 391 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2678 return self ? g_variant_ref (self) : NULL;
2679 #line 2680 "tracker-store.c"
2680 }
2681
2682
2683 static gboolean tracker_store_sparql_update_blank_co (TrackerStoreSparqlUpdateBlankData* _data_) {
2684 #line 373 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2685 switch (_data_->_state_) {
2686 #line 373 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2687 case 0:
2688 #line 2689 "tracker-store.c"
2689 goto _state_0;
2690 #line 373 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2691 case 1:
2692 #line 2693 "tracker-store.c"
2693 goto _state_1;
2694 default:
2695 #line 373 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2696 g_assert_not_reached ();
2697 #line 2698 "tracker-store.c"
2698 }
2699 _state_0:
2700 #line 374 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2701 _data_->_tmp0_ = tracker_store_update_task_new ();
2702 #line 374 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2703 _data_->task = _data_->_tmp0_;
2704 #line 375 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2705 _data_->_tmp1_ = _data_->task;
2706 #line 375 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2707 ((TrackerStoreTask*) _data_->_tmp1_)->type = TRACKER_STORE_TASK_TYPE_UPDATE_BLANK;
2708 #line 376 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2709 _data_->_tmp2_ = _data_->task;
2710 #line 376 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2711 _data_->_tmp3_ = _data_->sparql;
2712 #line 376 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2713 _data_->_tmp4_ = g_strdup (_data_->_tmp3_);
2714 #line 376 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2715 _g_free0 (_data_->_tmp2_->query);
2716 #line 376 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2717 _data_->_tmp2_->query = _data_->_tmp4_;
2718 #line 377 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2719 _data_->_tmp5_ = _data_->task;
2720 #line 377 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2721 _data_->_tmp6_ = _data_->priority;
2722 #line 377 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2723 _data_->_tmp5_->priority = _data_->_tmp6_;
2724 #line 378 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2725 _data_->_tmp7_ = _data_->task;
2726 #line 378 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2727 (((TrackerStoreTask*) _data_->_tmp7_)->callback_target_destroy_notify == NULL) ? NULL : (((TrackerStoreTask*) _data_->_tmp7_)->callback_target_destroy_notify (((TrackerStoreTask*) _data_->_tmp7_)->callback_target), NULL);
2728 #line 378 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2729 ((TrackerStoreTask*) _data_->_tmp7_)->callback = NULL;
2730 #line 378 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2731 ((TrackerStoreTask*) _data_->_tmp7_)->callback_target = NULL;
2732 #line 378 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2733 ((TrackerStoreTask*) _data_->_tmp7_)->callback_target_destroy_notify = NULL;
2734 #line 378 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2735 ((TrackerStoreTask*) _data_->_tmp7_)->callback = _tracker_store_sparql_update_blank_co_gsource_func;
2736 #line 378 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2737 ((TrackerStoreTask*) _data_->_tmp7_)->callback_target = _data_;
2738 #line 378 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2739 ((TrackerStoreTask*) _data_->_tmp7_)->callback_target_destroy_notify = NULL;
2740 #line 379 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2741 _data_->_tmp8_ = _data_->task;
2742 #line 379 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2743 _data_->_tmp9_ = _data_->client_id;
2744 #line 379 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2745 _data_->_tmp10_ = g_strdup (_data_->_tmp9_);
2746 #line 379 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2747 _g_free0 (((TrackerStoreTask*) _data_->_tmp8_)->client_id);
2748 #line 379 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2749 ((TrackerStoreTask*) _data_->_tmp8_)->client_id = _data_->_tmp10_;
2750 #line 381 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2751 _data_->_tmp11_ = _data_->priority;
2752 #line 381 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2753 _data_->_tmp12_ = tracker_store_update_queues[_data_->_tmp11_];
2754 #line 381 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2755 _data_->_tmp13_ = _data_->task;
2756 #line 381 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2757 _data_->_tmp14_ = _tracker_store_task_ref0 ((TrackerStoreTask*) _data_->_tmp13_);
2758 #line 381 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2759 g_queue_push_tail (_data_->_tmp12_, _data_->_tmp14_);
2760 #line 383 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2761 tracker_store_sched ();
2762 #line 385 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2763 _data_->_state_ = 1;
2764 #line 385 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2765 return FALSE;
2766 #line 2767 "tracker-store.c"
2767 _state_1:
2768 ;
2769 #line 387 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2770 _data_->_tmp15_ = _data_->task;
2771 #line 387 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2772 _data_->_tmp16_ = ((TrackerStoreTask*) _data_->_tmp15_)->error;
2773 #line 387 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2774 if (_data_->_tmp16_ != NULL) {
2775 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2776 _data_->_tmp17_ = _data_->task;
2777 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2778 _data_->_tmp18_ = ((TrackerStoreTask*) _data_->_tmp17_)->error;
2779 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2780 _data_->_tmp19_ = _g_error_copy0 (_data_->_tmp18_);
2781 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2782 _data_->_inner_error_ = _data_->_tmp19_;
2783 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2784 g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
2785 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2786 g_error_free (_data_->_inner_error_);
2787 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2788 _tracker_store_task_unref0 (_data_->task);
2789 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2790 if (_data_->_state_ == 0) {
2791 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2792 g_simple_async_result_complete_in_idle (_data_->_async_result);
2793 #line 2794 "tracker-store.c"
2794 } else {
2795 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2796 g_simple_async_result_complete (_data_->_async_result);
2797 #line 2798 "tracker-store.c"
2798 }
2799 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2800 g_object_unref (_data_->_async_result);
2801 #line 388 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2802 return FALSE;
2803 #line 2804 "tracker-store.c"
2804 }
2805 #line 391 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2806 _data_->_tmp20_ = _data_->task;
2807 #line 391 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2808 _data_->_tmp21_ = _data_->_tmp20_->blank_nodes;
2809 #line 391 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2810 _data_->_tmp22_ = _g_variant_ref0 (_data_->_tmp21_);
2811 #line 391 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2812 _data_->result = _data_->_tmp22_;
2813 #line 391 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2814 _tracker_store_task_unref0 (_data_->task);
2815 #line 391 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2816 if (_data_->_state_ == 0) {
2817 #line 391 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2818 g_simple_async_result_complete_in_idle (_data_->_async_result);
2819 #line 2820 "tracker-store.c"
2820 } else {
2821 #line 391 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2822 g_simple_async_result_complete (_data_->_async_result);
2823 #line 2824 "tracker-store.c"
2824 }
2825 #line 391 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2826 g_object_unref (_data_->_async_result);
2827 #line 391 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2828 return FALSE;
2829 #line 373 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2830 _tracker_store_task_unref0 (_data_->task);
2831 #line 373 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2832 if (_data_->_state_ == 0) {
2833 #line 373 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2834 g_simple_async_result_complete_in_idle (_data_->_async_result);
2835 #line 2836 "tracker-store.c"
2836 } else {
2837 #line 373 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2838 g_simple_async_result_complete (_data_->_async_result);
2839 #line 2840 "tracker-store.c"
2840 }
2841 #line 373 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2842 g_object_unref (_data_->_async_result);
2843 #line 373 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2844 return FALSE;
2845 #line 2846 "tracker-store.c"
2846 }
2847
2848
2849 static void tracker_store_queue_turtle_import_data_free (gpointer _data) {
2850 TrackerStoreQueueTurtleImportData* _data_;
2851 _data_ = _data;
2852 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2853 _g_object_unref0 (_data_->file);
2854 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2855 _g_free0 (_data_->client_id);
2856 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2857 g_slice_free (TrackerStoreQueueTurtleImportData, _data_);
2858 #line 2859 "tracker-store.c"
2859 }
2860
2861
2862 void tracker_store_queue_turtle_import (GFile* file, const gchar* client_id, GAsyncReadyCallback _callback_, gpointer _user_data_) {
2863 TrackerStoreQueueTurtleImportData* _data_;
2864 GFile* _tmp0_;
2865 GFile* _tmp1_;
2866 const gchar* _tmp2_;
2867 gchar* _tmp3_;
2868 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2869 _data_ = g_slice_new0 (TrackerStoreQueueTurtleImportData);
2870 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2871 _data_->_async_result = g_simple_async_result_new (NULL, _callback_, _user_data_, tracker_store_queue_turtle_import);
2872 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2873 g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, tracker_store_queue_turtle_import_data_free);
2874 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2875 _tmp0_ = file;
2876 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2877 _tmp1_ = _g_object_ref0 (_tmp0_);
2878 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2879 _g_object_unref0 (_data_->file);
2880 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2881 _data_->file = _tmp1_;
2882 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2883 _tmp2_ = client_id;
2884 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2885 _tmp3_ = g_strdup (_tmp2_);
2886 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2887 _g_free0 (_data_->client_id);
2888 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2889 _data_->client_id = _tmp3_;
2890 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2891 tracker_store_queue_turtle_import_co (_data_);
2892 #line 2893 "tracker-store.c"
2893 }
2894
2895
2896 void tracker_store_queue_turtle_import_finish (GAsyncResult* _res_, GError** error) {
2897 TrackerStoreQueueTurtleImportData* _data_;
(emitted by gcc) 2898 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2899 if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (_res_), error)) {
2900 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2901 return;
2902 #line 2903 "tracker-store.c"
2903 }
2904 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2905 _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
(emitted by clang-analyzer)TODO: a detailed trace is available in the data model (not yet rendered in this report)
2906 #line 2907 "tracker-store.c"
2907 }
2908
2909
2910 static gboolean _tracker_store_queue_turtle_import_co_gsource_func (gpointer self) {
2911 gboolean result;
2912 result = tracker_store_queue_turtle_import_co (self);
2913 #line 398 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2914 return result;
2915 #line 2916 "tracker-store.c"
2916 }
2917
2918
2919 static gboolean tracker_store_queue_turtle_import_co (TrackerStoreQueueTurtleImportData* _data_) {
2920 #line 394 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2921 switch (_data_->_state_) {
2922 #line 394 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2923 case 0:
2924 #line 2925 "tracker-store.c"
2925 goto _state_0;
2926 #line 394 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2927 case 1:
2928 #line 2929 "tracker-store.c"
2929 goto _state_1;
2930 default:
2931 #line 394 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2932 g_assert_not_reached ();
2933 #line 2934 "tracker-store.c"
2934 }
2935 _state_0:
2936 #line 395 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2937 _data_->_tmp0_ = tracker_store_turtle_task_new ();
2938 #line 395 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2939 _data_->task = _data_->_tmp0_;
2940 #line 396 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2941 _data_->_tmp1_ = _data_->task;
2942 #line 396 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2943 ((TrackerStoreTask*) _data_->_tmp1_)->type = TRACKER_STORE_TASK_TYPE_TURTLE;
2944 #line 397 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2945 _data_->_tmp2_ = _data_->task;
2946 #line 397 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2947 _data_->_tmp3_ = _data_->file;
2948 #line 397 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2949 _data_->_tmp4_ = NULL;
2950 #line 397 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2951 _data_->_tmp4_ = g_file_get_path (_data_->_tmp3_);
2952 #line 397 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2953 _g_free0 (_data_->_tmp2_->path);
2954 #line 397 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2955 _data_->_tmp2_->path = _data_->_tmp4_;
2956 #line 398 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2957 _data_->_tmp5_ = _data_->task;
2958 #line 398 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2959 (((TrackerStoreTask*) _data_->_tmp5_)->callback_target_destroy_notify == NULL) ? NULL : (((TrackerStoreTask*) _data_->_tmp5_)->callback_target_destroy_notify (((TrackerStoreTask*) _data_->_tmp5_)->callback_target), NULL);
2960 #line 398 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2961 ((TrackerStoreTask*) _data_->_tmp5_)->callback = NULL;
2962 #line 398 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2963 ((TrackerStoreTask*) _data_->_tmp5_)->callback_target = NULL;
2964 #line 398 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2965 ((TrackerStoreTask*) _data_->_tmp5_)->callback_target_destroy_notify = NULL;
2966 #line 398 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2967 ((TrackerStoreTask*) _data_->_tmp5_)->callback = _tracker_store_queue_turtle_import_co_gsource_func;
2968 #line 398 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2969 ((TrackerStoreTask*) _data_->_tmp5_)->callback_target = _data_;
2970 #line 398 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2971 ((TrackerStoreTask*) _data_->_tmp5_)->callback_target_destroy_notify = NULL;
2972 #line 399 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2973 _data_->_tmp6_ = _data_->task;
2974 #line 399 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2975 _data_->_tmp7_ = _data_->client_id;
2976 #line 399 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2977 _data_->_tmp8_ = g_strdup (_data_->_tmp7_);
2978 #line 399 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2979 _g_free0 (((TrackerStoreTask*) _data_->_tmp6_)->client_id);
2980 #line 399 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2981 ((TrackerStoreTask*) _data_->_tmp6_)->client_id = _data_->_tmp8_;
2982 #line 401 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2983 _data_->_tmp9_ = tracker_store_update_queues[TRACKER_STORE_PRIORITY_TURTLE];
2984 #line 401 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2985 _data_->_tmp10_ = _data_->task;
2986 #line 401 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2987 _data_->_tmp11_ = _tracker_store_task_ref0 ((TrackerStoreTask*) _data_->_tmp10_);
2988 #line 401 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2989 g_queue_push_tail (_data_->_tmp9_, _data_->_tmp11_);
2990 #line 403 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2991 tracker_store_sched ();
2992 #line 405 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2993 _data_->_state_ = 1;
2994 #line 405 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
2995 return FALSE;
2996 #line 2997 "tracker-store.c"
2997 _state_1:
2998 ;
2999 #line 407 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3000 _data_->_tmp12_ = _data_->task;
3001 #line 407 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3002 _data_->_tmp13_ = ((TrackerStoreTask*) _data_->_tmp12_)->error;
3003 #line 407 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3004 if (_data_->_tmp13_ != NULL) {
3005 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3006 _data_->_tmp14_ = _data_->task;
3007 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3008 _data_->_tmp15_ = ((TrackerStoreTask*) _data_->_tmp14_)->error;
3009 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3010 _data_->_tmp16_ = _g_error_copy0 (_data_->_tmp15_);
3011 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3012 _data_->_inner_error_ = _data_->_tmp16_;
3013 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3014 g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
3015 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3016 g_error_free (_data_->_inner_error_);
3017 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3018 _tracker_store_task_unref0 (_data_->task);
3019 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3020 if (_data_->_state_ == 0) {
3021 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3022 g_simple_async_result_complete_in_idle (_data_->_async_result);
3023 #line 3024 "tracker-store.c"
3024 } else {
3025 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3026 g_simple_async_result_complete (_data_->_async_result);
3027 #line 3028 "tracker-store.c"
3028 }
3029 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3030 g_object_unref (_data_->_async_result);
3031 #line 408 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3032 return FALSE;
3033 #line 3034 "tracker-store.c"
3034 }
3035 #line 394 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3036 _tracker_store_task_unref0 (_data_->task);
3037 #line 394 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3038 if (_data_->_state_ == 0) {
3039 #line 394 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3040 g_simple_async_result_complete_in_idle (_data_->_async_result);
3041 #line 3042 "tracker-store.c"
3042 } else {
3043 #line 394 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3044 g_simple_async_result_complete (_data_->_async_result);
3045 #line 3046 "tracker-store.c"
3046 }
3047 #line 394 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3048 g_object_unref (_data_->_async_result);
3049 #line 394 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3050 return FALSE;
3051 #line 3052 "tracker-store.c"
3052 }
3053
3054
3055 guint tracker_store_get_queue_size (TrackerStore* self) {
3056 guint result = 0U;
3057 guint _result_;
3058 #line 412 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3059 g_return_val_if_fail (self != NULL, 0U);
3060 #line 413 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3061 _result_ = (guint) 0;
3062 #line 3063 "tracker-store.c"
3063 {
3064 gint i;
3065 #line 415 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3066 i = 0;
3067 #line 3068 "tracker-store.c"
3068 {
3069 gboolean _tmp0_;
3070 #line 415 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3071 _tmp0_ = TRUE;
3072 #line 415 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3073 while (TRUE) {
3074 #line 3075 "tracker-store.c"
3075 gboolean _tmp1_;
3076 gint _tmp3_;
3077 guint _tmp4_;
3078 gint _tmp5_;
3079 GQueue* _tmp6_;
3080 guint _tmp7_ = 0U;
3081 guint _tmp8_;
3082 gint _tmp9_;
3083 GQueue* _tmp10_;
3084 guint _tmp11_ = 0U;
3085 #line 415 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3086 _tmp1_ = _tmp0_;
3087 #line 415 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3088 if (!_tmp1_) {
3089 #line 3090 "tracker-store.c"
3090 gint _tmp2_;
3091 #line 415 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3092 _tmp2_ = i;
3093 #line 415 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3094 i = _tmp2_ + 1;
3095 #line 3096 "tracker-store.c"
3096 }
3097 #line 415 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3098 _tmp0_ = FALSE;
3099 #line 415 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3100 _tmp3_ = i;
3101 #line 415 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3102 if (!(_tmp3_ < ((gint) TRACKER_STORE_PRIORITY_N_PRIORITIES))) {
3103 #line 415 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3104 break;
3105 #line 3106 "tracker-store.c"
3106 }
3107 #line 416 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3108 _tmp4_ = _result_;
3109 #line 416 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3110 _tmp5_ = i;
3111 #line 416 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3112 _tmp6_ = tracker_store_query_queues[_tmp5_];
3113 #line 416 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3114 _tmp7_ = g_queue_get_length (_tmp6_);
3115 #line 416 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3116 _result_ = _tmp4_ + _tmp7_;
3117 #line 417 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3118 _tmp8_ = _result_;
3119 #line 417 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3120 _tmp9_ = i;
3121 #line 417 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3122 _tmp10_ = tracker_store_update_queues[_tmp9_];
3123 #line 417 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3124 _tmp11_ = g_queue_get_length (_tmp10_);
3125 #line 417 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3126 _result_ = _tmp8_ + _tmp11_;
3127 #line 3128 "tracker-store.c"
3128 }
3129 }
3130 }
3131 #line 419 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3132 result = _result_;
3133 #line 419 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3134 return result;
3135 #line 3136 "tracker-store.c"
3136 }
3137
3138
3139 static gint g_ptr_array_get_length (GPtrArray* self) {
3140 gint result;
3141 guint _tmp0_;
3142 #line 4080 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
3143 g_return_val_if_fail (self != NULL, 0);
3144 #line 4080 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
3145 _tmp0_ = self->len;
3146 #line 4080 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
3147 result = (gint) _tmp0_;
3148 #line 4080 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
3149 return result;
3150 #line 3151 "tracker-store.c"
3151 }
3152
3153
3154 static void g_ptr_array_set_length (GPtrArray* self, gint value) {
3155 gint _tmp0_;
3156 #line 4081 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
3157 g_return_if_fail (self != NULL);
3158 #line 4081 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
3159 _tmp0_ = value;
3160 #line 4081 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
3161 g_ptr_array_set_size (self, _tmp0_);
3162 #line 3163 "tracker-store.c"
3163 }
3164
3165
3166 void tracker_store_unreg_batches (const gchar* client_id) {
3167 GList* list = NULL;
3168 GList* cur = NULL;
3169 GQueue* queue = NULL;
3170 #line 422 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3171 g_return_if_fail (client_id != NULL);
3172 #line 3173 "tracker-store.c"
3173 {
3174 gint i;
3175 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3176 i = 0;
3177 #line 3178 "tracker-store.c"
3178 {
3179 gboolean _tmp0_;
3180 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3181 _tmp0_ = TRUE;
3182 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3183 while (TRUE) {
3184 #line 3185 "tracker-store.c"
3185 gboolean _tmp1_;
3186 gint _tmp3_;
3187 GPtrArray* _tmp4_;
3188 gint _tmp5_;
3189 gint _tmp6_;
3190 GPtrArray* _tmp7_;
3191 gint _tmp8_;
3192 gconstpointer _tmp9_ = NULL;
3193 TrackerStoreQueryTask* task;
3194 gboolean _tmp10_ = FALSE;
3195 gboolean _tmp11_ = FALSE;
3196 TrackerStoreQueryTask* _tmp12_;
3197 gboolean _tmp16_;
3198 gboolean _tmp19_;
3199 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3200 _tmp1_ = _tmp0_;
3201 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3202 if (!_tmp1_) {
3203 #line 3204 "tracker-store.c"
3204 gint _tmp2_;
3205 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3206 _tmp2_ = i;
3207 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3208 i = _tmp2_ + 1;
3209 #line 3210 "tracker-store.c"
3210 }
3211 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3212 _tmp0_ = FALSE;
3213 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3214 _tmp3_ = i;
3215 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3216 _tmp4_ = tracker_store_running_tasks;
3217 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3218 _tmp5_ = g_ptr_array_get_length (_tmp4_);
3219 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3220 _tmp6_ = _tmp5_;
3221 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3222 if (!(_tmp3_ < _tmp6_)) {
3223 #line 426 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3224 break;
3225 #line 3226 "tracker-store.c"
3226 }
3227 #line 427 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3228 _tmp7_ = tracker_store_running_tasks;
3229 #line 427 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3230 _tmp8_ = i;
3231 #line 427 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3232 _tmp9_ = g_ptr_array_index (_tmp7_, (guint) _tmp8_);
3233 #line 427 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3234 task = G_TYPE_CHECK_INSTANCE_TYPE ((TrackerStoreTask*) _tmp9_, TRACKER_STORE_TYPE_QUERY_TASK) ? ((TrackerStoreQueryTask*) ((TrackerStoreTask*) _tmp9_)) : NULL;
3235 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3236 _tmp12_ = task;
3237 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3238 if (_tmp12_ != NULL) {
3239 #line 3240 "tracker-store.c"
3240 TrackerStoreQueryTask* _tmp13_;
3241 const gchar* _tmp14_;
3242 const gchar* _tmp15_;
3243 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3244 _tmp13_ = task;
3245 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3246 _tmp14_ = ((TrackerStoreTask*) _tmp13_)->client_id;
3247 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3248 _tmp15_ = client_id;
3249 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3250 _tmp11_ = g_strcmp0 (_tmp14_, _tmp15_) == 0;
3251 #line 3252 "tracker-store.c"
3252 } else {
3253 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3254 _tmp11_ = FALSE;
3255 #line 3256 "tracker-store.c"
3256 }
3257 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3258 _tmp16_ = _tmp11_;
3259 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3260 if (_tmp16_) {
3261 #line 3262 "tracker-store.c"
3262 TrackerStoreQueryTask* _tmp17_;
3263 GCancellable* _tmp18_;
3264 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3265 _tmp17_ = task;
3266 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3267 _tmp18_ = _tmp17_->cancellable;
3268 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3269 _tmp10_ = _tmp18_ != NULL;
3270 #line 3271 "tracker-store.c"
3271 } else {
3272 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3273 _tmp10_ = FALSE;
3274 #line 3275 "tracker-store.c"
3275 }
3276 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3277 _tmp19_ = _tmp10_;
3278 #line 428 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3279 if (_tmp19_) {
3280 #line 3281 "tracker-store.c"
3281 TrackerStoreQueryTask* _tmp20_;
3282 GCancellable* _tmp21_;
3283 #line 429 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3284 _tmp20_ = task;
3285 #line 429 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3286 _tmp21_ = _tmp20_->cancellable;
3287 #line 429 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3288 g_cancellable_cancel (_tmp21_);
3289 #line 3290 "tracker-store.c"
3290 }
3291 }
3292 }
3293 }
3294 {
3295 gint i;
3296 #line 433 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3297 i = 0;
3298 #line 3299 "tracker-store.c"
3299 {
3300 gboolean _tmp22_;
3301 #line 433 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3302 _tmp22_ = TRUE;
3303 #line 433 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3304 while (TRUE) {
3305 #line 3306 "tracker-store.c"
3306 gboolean _tmp23_;
3307 gint _tmp25_;
3308 gint _tmp26_;
3309 GQueue* _tmp27_;
3310 GQueue* _tmp28_;
3311 GList* _tmp29_;
3312 gint _tmp48_;
3313 GQueue* _tmp49_;
3314 GQueue* _tmp50_;
3315 GList* _tmp51_;
3316 #line 433 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3317 _tmp23_ = _tmp22_;
3318 #line 433 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3319 if (!_tmp23_) {
3320 #line 3321 "tracker-store.c"
3321 gint _tmp24_;
3322 #line 433 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3323 _tmp24_ = i;
3324 #line 433 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3325 i = _tmp24_ + 1;
3326 #line 3327 "tracker-store.c"
3327 }
3328 #line 433 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3329 _tmp22_ = FALSE;
3330 #line 433 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3331 _tmp25_ = i;
3332 #line 433 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3333 if (!(_tmp25_ < ((gint) TRACKER_STORE_PRIORITY_N_PRIORITIES))) {
3334 #line 433 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3335 break;
3336 #line 3337 "tracker-store.c"
3337 }
3338 #line 434 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3339 _tmp26_ = i;
3340 #line 434 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3341 _tmp27_ = tracker_store_query_queues[_tmp26_];
3342 #line 434 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3343 queue = _tmp27_;
3344 #line 435 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3345 _tmp28_ = queue;
3346 #line 435 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3347 _tmp29_ = _tmp28_->head;
3348 #line 435 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3349 list = _tmp29_;
3350 #line 436 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3351 while (TRUE) {
3352 #line 3353 "tracker-store.c"
3353 GList* _tmp30_;
3354 GList* _tmp31_;
3355 GList* _tmp32_;
3356 GList* _tmp33_;
3357 GList* _tmp34_;
3358 gconstpointer _tmp35_;
3359 TrackerStoreTask* task;
3360 gboolean _tmp36_ = FALSE;
3361 TrackerStoreTask* _tmp37_;
3362 gboolean _tmp41_;
3363 #line 436 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3364 _tmp30_ = list;
3365 #line 436 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3366 if (!(_tmp30_ != NULL)) {
3367 #line 436 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3368 break;
3369 #line 3370 "tracker-store.c"
3370 }
3371 #line 437 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3372 _tmp31_ = list;
3373 #line 437 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3374 cur = _tmp31_;
3375 #line 438 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3376 _tmp32_ = list;
3377 #line 438 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3378 _tmp33_ = _tmp32_->next;
3379 #line 438 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3380 list = _tmp33_;
3381 #line 439 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3382 _tmp34_ = cur;
3383 #line 439 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3384 _tmp35_ = _tmp34_->data;
3385 #line 439 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3386 task = (TrackerStoreTask*) _tmp35_;
3387 #line 441 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3388 _tmp37_ = task;
3389 #line 441 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3390 if (_tmp37_ != NULL) {
3391 #line 3392 "tracker-store.c"
3392 TrackerStoreTask* _tmp38_;
3393 const gchar* _tmp39_;
3394 const gchar* _tmp40_;
3395 #line 441 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3396 _tmp38_ = task;
3397 #line 441 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3398 _tmp39_ = _tmp38_->client_id;
3399 #line 441 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3400 _tmp40_ = client_id;
3401 #line 441 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3402 _tmp36_ = g_strcmp0 (_tmp39_, _tmp40_) == 0;
3403 #line 3404 "tracker-store.c"
3404 } else {
3405 #line 441 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3406 _tmp36_ = FALSE;
3407 #line 3408 "tracker-store.c"
3408 }
3409 #line 441 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3410 _tmp41_ = _tmp36_;
3411 #line 441 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3412 if (_tmp41_) {
3413 #line 3414 "tracker-store.c"
3414 GQueue* _tmp42_;
3415 GList* _tmp43_;
3416 TrackerStoreTask* _tmp44_;
3417 GError* _tmp45_;
3418 TrackerStoreTask* _tmp46_;
3419 GSourceFunc _tmp47_;
3420 void* _tmp47__target;
3421 #line 442 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3422 _tmp42_ = queue;
3423 #line 442 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3424 _tmp43_ = cur;
3425 #line 442 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3426 g_queue_delete_link (_tmp42_, _tmp43_);
3427 #line 444 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3428 _tmp44_ = task;
3429 #line 444 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3430 _tmp45_ = g_error_new_literal (G_DBUS_ERROR, G_DBUS_ERROR_FAILED, "Client disappeared");
3431 #line 444 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3432 _g_error_free0 (_tmp44_->error);
3433 #line 444 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3434 _tmp44_->error = _tmp45_;
3435 #line 445 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3436 _tmp46_ = task;
3437 #line 445 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3438 _tmp47_ = _tmp46_->callback;
3439 #line 445 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3440 _tmp47__target = _tmp46_->callback_target;
3441 #line 445 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3442 _tmp47_ (_tmp47__target);
3443 #line 3444 "tracker-store.c"
3444 }
3445 }
3446 #line 449 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3447 _tmp48_ = i;
3448 #line 449 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3449 _tmp49_ = tracker_store_update_queues[_tmp48_];
3450 #line 449 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3451 queue = _tmp49_;
3452 #line 450 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3453 _tmp50_ = queue;
3454 #line 450 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3455 _tmp51_ = _tmp50_->head;
3456 #line 450 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3457 list = _tmp51_;
3458 #line 451 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3459 while (TRUE) {
3460 #line 3461 "tracker-store.c"
3461 GList* _tmp52_;
3462 GList* _tmp53_;
3463 GList* _tmp54_;
3464 GList* _tmp55_;
3465 GList* _tmp56_;
3466 gconstpointer _tmp57_;
3467 TrackerStoreTask* task;
3468 gboolean _tmp58_ = FALSE;
3469 TrackerStoreTask* _tmp59_;
3470 gboolean _tmp63_;
3471 #line 451 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3472 _tmp52_ = list;
3473 #line 451 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3474 if (!(_tmp52_ != NULL)) {
3475 #line 451 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3476 break;
3477 #line 3478 "tracker-store.c"
3478 }
3479 #line 452 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3480 _tmp53_ = list;
3481 #line 452 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3482 cur = _tmp53_;
3483 #line 453 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3484 _tmp54_ = list;
3485 #line 453 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3486 _tmp55_ = _tmp54_->next;
3487 #line 453 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3488 list = _tmp55_;
3489 #line 454 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3490 _tmp56_ = cur;
3491 #line 454 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3492 _tmp57_ = _tmp56_->data;
3493 #line 454 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3494 task = (TrackerStoreTask*) _tmp57_;
3495 #line 456 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3496 _tmp59_ = task;
3497 #line 456 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3498 if (_tmp59_ != NULL) {
3499 #line 3500 "tracker-store.c"
3500 TrackerStoreTask* _tmp60_;
3501 const gchar* _tmp61_;
3502 const gchar* _tmp62_;
3503 #line 456 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3504 _tmp60_ = task;
3505 #line 456 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3506 _tmp61_ = _tmp60_->client_id;
3507 #line 456 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3508 _tmp62_ = client_id;
3509 #line 456 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3510 _tmp58_ = g_strcmp0 (_tmp61_, _tmp62_) == 0;
3511 #line 3512 "tracker-store.c"
3512 } else {
3513 #line 456 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3514 _tmp58_ = FALSE;
3515 #line 3516 "tracker-store.c"
3516 }
3517 #line 456 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3518 _tmp63_ = _tmp58_;
3519 #line 456 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3520 if (_tmp63_) {
3521 #line 3522 "tracker-store.c"
3522 GQueue* _tmp64_;
3523 GList* _tmp65_;
3524 TrackerStoreTask* _tmp66_;
3525 GError* _tmp67_;
3526 TrackerStoreTask* _tmp68_;
3527 GSourceFunc _tmp69_;
3528 void* _tmp69__target;
3529 #line 457 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3530 _tmp64_ = queue;
3531 #line 457 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3532 _tmp65_ = cur;
3533 #line 457 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3534 g_queue_delete_link (_tmp64_, _tmp65_);
3535 #line 459 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3536 _tmp66_ = task;
3537 #line 459 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3538 _tmp67_ = g_error_new_literal (G_DBUS_ERROR, G_DBUS_ERROR_FAILED, "Client disappeared");
3539 #line 459 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3540 _g_error_free0 (_tmp66_->error);
3541 #line 459 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3542 _tmp66_->error = _tmp67_;
3543 #line 460 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3544 _tmp68_ = task;
3545 #line 460 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3546 _tmp69_ = _tmp68_->callback;
3547 #line 460 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3548 _tmp69__target = _tmp68_->callback_target;
3549 #line 460 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3550 _tmp69_ (_tmp69__target);
3551 #line 3552 "tracker-store.c"
3552 }
3553 }
3554 }
3555 }
3556 }
3557 #line 465 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3558 tracker_store_sched ();
3559 #line 3560 "tracker-store.c"
3560 }
3561
3562
3563 static void tracker_store_pause_data_free (gpointer _data) {
3564 TrackerStorePauseData* _data_;
3565 _data_ = _data;
3566 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3567 g_slice_free (TrackerStorePauseData, _data_);
3568 #line 3569 "tracker-store.c"
3569 }
3570
3571
3572 void tracker_store_pause (GAsyncReadyCallback _callback_, gpointer _user_data_) {
3573 TrackerStorePauseData* _data_;
3574 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3575 _data_ = g_slice_new0 (TrackerStorePauseData);
3576 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3577 _data_->_async_result = g_simple_async_result_new (NULL, _callback_, _user_data_, tracker_store_pause);
3578 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3579 g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, tracker_store_pause_data_free);
3580 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3581 tracker_store_pause_co (_data_);
3582 #line 3583 "tracker-store.c"
3583 }
3584
3585
3586 void tracker_store_pause_finish (GAsyncResult* _res_) {
3587 TrackerStorePauseData* _data_;
(emitted by gcc) 3588 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3589 _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
(emitted by clang-analyzer)TODO: a detailed trace is available in the data model (not yet rendered in this report)
3590 #line 3591 "tracker-store.c"
3591 }
3592
3593
3594 static gboolean _tracker_store_pause_co_gsource_func (gpointer self) {
3595 gboolean result;
3596 result = tracker_store_pause_co (self);
3597 #line 472 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3598 return result;
3599 #line 3600 "tracker-store.c"
3600 }
3601
3602
3603 static gboolean tracker_store_pause_co (TrackerStorePauseData* _data_) {
3604 #line 468 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3605 switch (_data_->_state_) {
3606 #line 468 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3607 case 0:
3608 #line 3609 "tracker-store.c"
3609 goto _state_0;
3610 #line 468 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3611 case 1:
3612 #line 3613 "tracker-store.c"
3613 goto _state_1;
3614 default:
3615 #line 468 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3616 g_assert_not_reached ();
3617 #line 3618 "tracker-store.c"
3618 }
3619 _state_0:
3620 #line 469 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3621 tracker_store_active = FALSE;
3622 #line 471 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3623 _data_->_tmp1_ = tracker_store_n_queries_running;
3624 #line 471 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3625 if (_data_->_tmp1_ > 0) {
3626 #line 471 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3627 _data_->_tmp0_ = TRUE;
3628 #line 3629 "tracker-store.c"
3629 } else {
3630 #line 471 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3631 _data_->_tmp2_ = tracker_store_update_running;
3632 #line 471 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3633 _data_->_tmp0_ = _data_->_tmp2_;
3634 #line 3635 "tracker-store.c"
3635 }
3636 #line 471 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3637 _data_->_tmp3_ = _data_->_tmp0_;
3638 #line 471 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3639 if (_data_->_tmp3_) {
3640 #line 472 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3641 (tracker_store_active_callback_target_destroy_notify == NULL) ? NULL : (tracker_store_active_callback_target_destroy_notify (tracker_store_active_callback_target), NULL);
3642 #line 472 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3643 tracker_store_active_callback = NULL;
3644 #line 472 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3645 tracker_store_active_callback_target = NULL;
3646 #line 472 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3647 tracker_store_active_callback_target_destroy_notify = NULL;
3648 #line 472 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3649 tracker_store_active_callback = _tracker_store_pause_co_gsource_func;
3650 #line 472 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3651 tracker_store_active_callback_target = _data_;
3652 #line 472 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3653 tracker_store_active_callback_target_destroy_notify = NULL;
3654 #line 473 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3655 _data_->_state_ = 1;
3656 #line 473 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3657 return FALSE;
3658 #line 3659 "tracker-store.c"
3659 _state_1:
3660 ;
3661 #line 474 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3662 (tracker_store_active_callback_target_destroy_notify == NULL) ? NULL : (tracker_store_active_callback_target_destroy_notify (tracker_store_active_callback_target), NULL);
3663 #line 474 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3664 tracker_store_active_callback = NULL;
3665 #line 474 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3666 tracker_store_active_callback_target = NULL;
3667 #line 474 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3668 tracker_store_active_callback_target_destroy_notify = NULL;
3669 #line 474 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3670 tracker_store_active_callback = NULL;
3671 #line 474 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3672 tracker_store_active_callback_target = NULL;
3673 #line 474 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3674 tracker_store_active_callback_target_destroy_notify = NULL;
3675 #line 3676 "tracker-store.c"
3676 }
3677 #line 477 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3678 _data_->_tmp4_ = 0;
3679 #line 477 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3680 _data_->_tmp4_ = g_atomic_int_get ((volatile gint *) (&tracker_store_checkpointing));
3681 #line 477 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3682 if (_data_->_tmp4_ != 0) {
3683 #line 479 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3684 _g_thread_pool_free0 (tracker_store_checkpoint_pool);
3685 #line 479 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3686 tracker_store_checkpoint_pool = NULL;
3687 #line 3688 "tracker-store.c"
3688 {
3689 #line 481 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3690 _data_->_tmp5_ = g_thread_pool_new (_tracker_store_checkpoint_dispatch_cb_gfunc, NULL, 1, TRUE, &_data_->_inner_error_);
3691 #line 481 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3692 _data_->_tmp6_ = _data_->_tmp5_;
3693 #line 481 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3694 if (_data_->_inner_error_ != NULL) {
3695 #line 3696 "tracker-store.c"
3696 goto __catch26_g_error;
3697 }
3698 #line 481 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3699 _g_thread_pool_free0 (tracker_store_checkpoint_pool);
3700 #line 481 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3701 tracker_store_checkpoint_pool = _data_->_tmp6_;
3702 #line 3703 "tracker-store.c"
3703 }
3704 goto __finally26;
3705 __catch26_g_error:
3706 {
3707 #line 480 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3708 _data_->e = _data_->_inner_error_;
3709 #line 480 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3710 _data_->_inner_error_ = NULL;
3711 #line 483 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3712 _data_->_tmp7_ = _data_->e;
3713 #line 483 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3714 _data_->_tmp8_ = _data_->_tmp7_->message;
3715 #line 483 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3716 g_warning ("%s", _data_->_tmp8_);
3717 #line 480 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3718 _g_error_free0 (_data_->e);
3719 #line 3720 "tracker-store.c"
3720 }
3721 __finally26:
3722 #line 480 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3723 if (_data_->_inner_error_ != NULL) {
3724 #line 480 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3725 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
3726 #line 480 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3727 g_clear_error (&_data_->_inner_error_);
3728 #line 480 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3729 return FALSE;
3730 #line 3731 "tracker-store.c"
3731 }
3732 }
3733 #line 487 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3734 _data_->_tmp9_ = tracker_store_active;
3735 #line 487 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3736 if (_data_->_tmp9_) {
3737 #line 488 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3738 tracker_store_sched ();
3739 #line 3740 "tracker-store.c"
3740 }
3741 #line 468 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3742 if (_data_->_state_ == 0) {
3743 #line 468 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3744 g_simple_async_result_complete_in_idle (_data_->_async_result);
3745 #line 3746 "tracker-store.c"
3746 } else {
3747 #line 468 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3748 g_simple_async_result_complete (_data_->_async_result);
3749 #line 3750 "tracker-store.c"
3750 }
3751 #line 468 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3752 g_object_unref (_data_->_async_result);
3753 #line 468 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3754 return FALSE;
3755 #line 3756 "tracker-store.c"
3756 }
3757
3758
3759 void tracker_store_resume (void) {
3760 #line 493 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3761 tracker_store_active = TRUE;
3762 #line 495 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3763 tracker_store_sched ();
3764 #line 3765 "tracker-store.c"
3765 }
3766
3767
3768 TrackerStore* tracker_store_construct (GType object_type) {
3769 TrackerStore* self = NULL;
3770 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3771 self = (TrackerStore*) g_type_create_instance (object_type);
3772 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3773 return self;
3774 #line 3775 "tracker-store.c"
3775 }
3776
3777
3778 TrackerStore* tracker_store_new (void) {
3779 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3780 return tracker_store_construct (TRACKER_TYPE_STORE);
3781 #line 3782 "tracker-store.c"
3782 }
3783
3784
3785 static TrackerStoreTask* tracker_store_task_construct (GType object_type) {
3786 TrackerStoreTask* self = NULL;
3787 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3788 self = (TrackerStoreTask*) g_type_create_instance (object_type);
3789 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3790 return self;
3791 #line 3792 "tracker-store.c"
3792 }
3793
3794
3795 static void tracker_store_value_task_init (GValue* value) {
3796 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3797 value->data[0].v_pointer = NULL;
3798 #line 3799 "tracker-store.c"
3799 }
3800
3801
3802 static void tracker_store_value_task_free_value (GValue* value) {
3803 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3804 if (value->data[0].v_pointer) {
3805 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3806 tracker_store_task_unref (value->data[0].v_pointer);
3807 #line 3808 "tracker-store.c"
3808 }
3809 }
3810
3811
3812 static void tracker_store_value_task_copy_value (const GValue* src_value, GValue* dest_value) {
3813 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3814 if (src_value->data[0].v_pointer) {
3815 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3816 dest_value->data[0].v_pointer = tracker_store_task_ref (src_value->data[0].v_pointer);
3817 #line 3818 "tracker-store.c"
3818 } else {
3819 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3820 dest_value->data[0].v_pointer = NULL;
3821 #line 3822 "tracker-store.c"
3822 }
3823 }
3824
3825
3826 static gpointer tracker_store_value_task_peek_pointer (const GValue* value) {
3827 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3828 return value->data[0].v_pointer;
3829 #line 3830 "tracker-store.c"
3830 }
3831
3832
3833 static gchar* tracker_store_value_task_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
3834 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3835 if (collect_values[0].v_pointer) {
3836 #line 3837 "tracker-store.c"
3837 TrackerStoreTask* object;
3838 object = collect_values[0].v_pointer;
3839 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3840 if (object->parent_instance.g_class == NULL) {
3841 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3842 return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
3843 #line 3844 "tracker-store.c"
3844 } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
3845 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3846 return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
3847 #line 3848 "tracker-store.c"
3848 }
3849 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3850 value->data[0].v_pointer = tracker_store_task_ref (object);
3851 #line 3852 "tracker-store.c"
3852 } else {
3853 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3854 value->data[0].v_pointer = NULL;
3855 #line 3856 "tracker-store.c"
3856 }
3857 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3858 return NULL;
3859 #line 3860 "tracker-store.c"
3860 }
3861
3862
3863 static gchar* tracker_store_value_task_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
3864 TrackerStoreTask** object_p;
3865 object_p = collect_values[0].v_pointer;
3866 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3867 if (!object_p) {
3868 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3869 return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
3870 #line 3871 "tracker-store.c"
3871 }
3872 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3873 if (!value->data[0].v_pointer) {
3874 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3875 *object_p = NULL;
3876 #line 3877 "tracker-store.c"
3877 } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
3878 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3879 *object_p = value->data[0].v_pointer;
3880 #line 3881 "tracker-store.c"
3881 } else {
3882 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3883 *object_p = tracker_store_task_ref (value->data[0].v_pointer);
3884 #line 3885 "tracker-store.c"
3885 }
3886 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3887 return NULL;
3888 #line 3889 "tracker-store.c"
3889 }
3890
3891
3892 static GParamSpec* tracker_store_param_spec_task (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) {
3893 TrackerStoreParamSpecTask* spec;
3894 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3895 g_return_val_if_fail (g_type_is_a (object_type, TRACKER_STORE_TYPE_TASK), NULL);
3896 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3897 spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
3898 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3899 G_PARAM_SPEC (spec)->value_type = object_type;
3900 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3901 return G_PARAM_SPEC (spec);
3902 #line 3903 "tracker-store.c"
3903 }
3904
3905
3906 static gpointer tracker_store_value_get_task (const GValue* value) {
3907 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3908 g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TRACKER_STORE_TYPE_TASK), NULL);
3909 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3910 return value->data[0].v_pointer;
3911 #line 3912 "tracker-store.c"
3912 }
3913
3914
3915 static void tracker_store_value_set_task (GValue* value, gpointer v_object) {
3916 TrackerStoreTask* old;
3917 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3918 g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TRACKER_STORE_TYPE_TASK));
3919 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3920 old = value->data[0].v_pointer;
3921 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3922 if (v_object) {
3923 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3924 g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TRACKER_STORE_TYPE_TASK));
3925 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3926 g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
3927 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3928 value->data[0].v_pointer = v_object;
3929 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3930 tracker_store_task_ref (value->data[0].v_pointer);
3931 #line 3932 "tracker-store.c"
3932 } else {
3933 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3934 value->data[0].v_pointer = NULL;
3935 #line 3936 "tracker-store.c"
3936 }
3937 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3938 if (old) {
3939 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3940 tracker_store_task_unref (old);
3941 #line 3942 "tracker-store.c"
3942 }
3943 }
3944
3945
3946 static void tracker_store_value_take_task (GValue* value, gpointer v_object) {
3947 TrackerStoreTask* old;
3948 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3949 g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TRACKER_STORE_TYPE_TASK));
3950 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3951 old = value->data[0].v_pointer;
3952 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3953 if (v_object) {
3954 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3955 g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TRACKER_STORE_TYPE_TASK));
3956 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3957 g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
3958 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3959 value->data[0].v_pointer = v_object;
3960 #line 3961 "tracker-store.c"
3961 } else {
3962 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3963 value->data[0].v_pointer = NULL;
3964 #line 3965 "tracker-store.c"
3965 }
3966 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3967 if (old) {
3968 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3969 tracker_store_task_unref (old);
3970 #line 3971 "tracker-store.c"
3971 }
3972 }
3973
3974
3975 static void tracker_store_task_class_init (TrackerStoreTaskClass * klass) {
3976 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3977 tracker_store_task_parent_class = g_type_class_peek_parent (klass);
3978 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3979 TRACKER_STORE_TASK_CLASS (klass)->finalize = tracker_store_task_finalize;
3980 #line 3981 "tracker-store.c"
3981 }
3982
3983
3984 static void tracker_store_task_instance_init (TrackerStoreTask * self) {
3985 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3986 self->ref_count = 1;
3987 #line 3988 "tracker-store.c"
3988 }
3989
3990
3991 static void tracker_store_task_finalize (TrackerStoreTask* obj) {
3992 TrackerStoreTask * self;
3993 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3994 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TRACKER_STORE_TYPE_TASK, TrackerStoreTask);
3995 #line 57 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3996 _g_free0 (self->client_id);
3997 #line 58 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
3998 _g_error_free0 (self->error);
3999 #line 59 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4000 (self->callback_target_destroy_notify == NULL) ? NULL : (self->callback_target_destroy_notify (self->callback_target), NULL);
4001 #line 59 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4002 self->callback = NULL;
4003 #line 59 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4004 self->callback_target = NULL;
4005 #line 59 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4006 self->callback_target_destroy_notify = NULL;
4007 #line 4008 "tracker-store.c"
4008 }
4009
4010
4011 static GType tracker_store_task_get_type (void) {
4012 static volatile gsize tracker_store_task_type_id__volatile = 0;
4013 if (g_once_init_enter (&tracker_store_task_type_id__volatile)) {
4014 static const GTypeValueTable g_define_type_value_table = { tracker_store_value_task_init, tracker_store_value_task_free_value, tracker_store_value_task_copy_value, tracker_store_value_task_peek_pointer, "p", tracker_store_value_task_collect_value, "p", tracker_store_value_task_lcopy_value };
4015 static const GTypeInfo g_define_type_info = { sizeof (TrackerStoreTaskClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tracker_store_task_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrackerStoreTask), 0, (GInstanceInitFunc) tracker_store_task_instance_init, &g_define_type_value_table };
4016 static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
4017 GType tracker_store_task_type_id;
4018 tracker_store_task_type_id = g_type_register_fundamental (g_type_fundamental_next (), "TrackerStoreTask", &g_define_type_info, &g_define_type_fundamental_info, G_TYPE_FLAG_ABSTRACT);
4019 g_once_init_leave (&tracker_store_task_type_id__volatile, tracker_store_task_type_id);
4020 }
4021 return tracker_store_task_type_id__volatile;
4022 }
4023
4024
4025 static gpointer tracker_store_task_ref (gpointer instance) {
4026 TrackerStoreTask* self;
4027 self = instance;
4028 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4029 g_atomic_int_inc (&self->ref_count);
4030 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4031 return instance;
4032 #line 4033 "tracker-store.c"
4033 }
4034
4035
4036 static void tracker_store_task_unref (gpointer instance) {
4037 TrackerStoreTask* self;
4038 self = instance;
4039 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4040 if (g_atomic_int_dec_and_test (&self->ref_count)) {
4041 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4042 TRACKER_STORE_TASK_GET_CLASS (self)->finalize (self);
4043 #line 55 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4044 g_type_free_instance ((GTypeInstance *) self);
4045 #line 4046 "tracker-store.c"
4046 }
4047 }
4048
4049
4050 static TrackerStoreQueryTask* tracker_store_query_task_construct (GType object_type) {
4051 TrackerStoreQueryTask* self = NULL;
4052 #line 62 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4053 self = (TrackerStoreQueryTask*) tracker_store_task_construct (object_type);
4054 #line 62 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4055 return self;
4056 #line 4057 "tracker-store.c"
4057 }
4058
4059
4060 static TrackerStoreQueryTask* tracker_store_query_task_new (void) {
4061 #line 62 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4062 return tracker_store_query_task_construct (TRACKER_STORE_TYPE_QUERY_TASK);
4063 #line 4064 "tracker-store.c"
4064 }
4065
4066
4067 static void tracker_store_query_task_class_init (TrackerStoreQueryTaskClass * klass) {
4068 #line 62 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4069 tracker_store_query_task_parent_class = g_type_class_peek_parent (klass);
4070 #line 62 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4071 TRACKER_STORE_TASK_CLASS (klass)->finalize = tracker_store_query_task_finalize;
4072 #line 4073 "tracker-store.c"
4073 }
4074
4075
4076 static void tracker_store_query_task_instance_init (TrackerStoreQueryTask * self) {
4077 }
4078
4079
4080 static void tracker_store_query_task_finalize (TrackerStoreTask* obj) {
4081 TrackerStoreQueryTask * self;
4082 guint _tmp0_;
4083 #line 62 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4084 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TRACKER_STORE_TYPE_QUERY_TASK, TrackerStoreQueryTask);
4085 #line 69 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4086 _tmp0_ = self->watchdog_id;
4087 #line 69 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4088 if (_tmp0_ > ((guint) 0)) {
4089 #line 4090 "tracker-store.c"
4090 guint _tmp1_;
4091 #line 70 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4092 _tmp1_ = self->watchdog_id;
4093 #line 70 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4094 g_source_remove (_tmp1_);
4095 #line 4096 "tracker-store.c"
4096 }
4097 #line 63 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4098 _g_free0 (self->query);
4099 #line 64 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4100 _g_object_unref0 (self->cancellable);
4101 #line 62 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4102 TRACKER_STORE_TASK_CLASS (tracker_store_query_task_parent_class)->finalize (obj);
4103 #line 4104 "tracker-store.c"
4104 }
4105
4106
4107 static GType tracker_store_query_task_get_type (void) {
4108 static volatile gsize tracker_store_query_task_type_id__volatile = 0;
4109 if (g_once_init_enter (&tracker_store_query_task_type_id__volatile)) {
4110 static const GTypeInfo g_define_type_info = { sizeof (TrackerStoreQueryTaskClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tracker_store_query_task_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrackerStoreQueryTask), 0, (GInstanceInitFunc) tracker_store_query_task_instance_init, NULL };
4111 GType tracker_store_query_task_type_id;
4112 tracker_store_query_task_type_id = g_type_register_static (TRACKER_STORE_TYPE_TASK, "TrackerStoreQueryTask", &g_define_type_info, 0);
4113 g_once_init_leave (&tracker_store_query_task_type_id__volatile, tracker_store_query_task_type_id);
4114 }
4115 return tracker_store_query_task_type_id__volatile;
4116 }
4117
4118
4119 static TrackerStoreUpdateTask* tracker_store_update_task_construct (GType object_type) {
4120 TrackerStoreUpdateTask* self = NULL;
4121 #line 75 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4122 self = (TrackerStoreUpdateTask*) tracker_store_task_construct (object_type);
4123 #line 75 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4124 return self;
4125 #line 4126 "tracker-store.c"
4126 }
4127
4128
4129 static TrackerStoreUpdateTask* tracker_store_update_task_new (void) {
4130 #line 75 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4131 return tracker_store_update_task_construct (TRACKER_STORE_TYPE_UPDATE_TASK);
4132 #line 4133 "tracker-store.c"
4133 }
4134
4135
4136 static void tracker_store_update_task_class_init (TrackerStoreUpdateTaskClass * klass) {
4137 #line 75 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4138 tracker_store_update_task_parent_class = g_type_class_peek_parent (klass);
4139 #line 75 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4140 TRACKER_STORE_TASK_CLASS (klass)->finalize = tracker_store_update_task_finalize;
4141 #line 4142 "tracker-store.c"
4142 }
4143
4144
4145 static void tracker_store_update_task_instance_init (TrackerStoreUpdateTask * self) {
4146 }
4147
4148
4149 static void tracker_store_update_task_finalize (TrackerStoreTask* obj) {
4150 TrackerStoreUpdateTask * self;
4151 #line 75 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4152 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TRACKER_STORE_TYPE_UPDATE_TASK, TrackerStoreUpdateTask);
4153 #line 76 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4154 _g_free0 (self->query);
4155 #line 77 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4156 _g_variant_unref0 (self->blank_nodes);
4157 #line 75 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4158 TRACKER_STORE_TASK_CLASS (tracker_store_update_task_parent_class)->finalize (obj);
4159 #line 4160 "tracker-store.c"
4160 }
4161
4162
4163 static GType tracker_store_update_task_get_type (void) {
4164 static volatile gsize tracker_store_update_task_type_id__volatile = 0;
4165 if (g_once_init_enter (&tracker_store_update_task_type_id__volatile)) {
4166 static const GTypeInfo g_define_type_info = { sizeof (TrackerStoreUpdateTaskClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tracker_store_update_task_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrackerStoreUpdateTask), 0, (GInstanceInitFunc) tracker_store_update_task_instance_init, NULL };
4167 GType tracker_store_update_task_type_id;
4168 tracker_store_update_task_type_id = g_type_register_static (TRACKER_STORE_TYPE_TASK, "TrackerStoreUpdateTask", &g_define_type_info, 0);
4169 g_once_init_leave (&tracker_store_update_task_type_id__volatile, tracker_store_update_task_type_id);
4170 }
4171 return tracker_store_update_task_type_id__volatile;
4172 }
4173
4174
4175 static TrackerStoreTurtleTask* tracker_store_turtle_task_construct (GType object_type) {
4176 TrackerStoreTurtleTask* self = NULL;
4177 #line 81 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4178 self = (TrackerStoreTurtleTask*) tracker_store_task_construct (object_type);
4179 #line 81 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4180 return self;
4181 #line 4182 "tracker-store.c"
4182 }
4183
4184
4185 static TrackerStoreTurtleTask* tracker_store_turtle_task_new (void) {
4186 #line 81 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4187 return tracker_store_turtle_task_construct (TRACKER_STORE_TYPE_TURTLE_TASK);
4188 #line 4189 "tracker-store.c"
4189 }
4190
4191
4192 static void tracker_store_turtle_task_class_init (TrackerStoreTurtleTaskClass * klass) {
4193 #line 81 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4194 tracker_store_turtle_task_parent_class = g_type_class_peek_parent (klass);
4195 #line 81 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4196 TRACKER_STORE_TASK_CLASS (klass)->finalize = tracker_store_turtle_task_finalize;
4197 #line 4198 "tracker-store.c"
4198 }
4199
4200
4201 static void tracker_store_turtle_task_instance_init (TrackerStoreTurtleTask * self) {
4202 }
4203
4204
4205 static void tracker_store_turtle_task_finalize (TrackerStoreTask* obj) {
4206 TrackerStoreTurtleTask * self;
4207 #line 81 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4208 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TRACKER_STORE_TYPE_TURTLE_TASK, TrackerStoreTurtleTask);
4209 #line 82 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4210 _g_free0 (self->path);
4211 #line 81 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4212 TRACKER_STORE_TASK_CLASS (tracker_store_turtle_task_parent_class)->finalize (obj);
4213 #line 4214 "tracker-store.c"
4214 }
4215
4216
4217 static GType tracker_store_turtle_task_get_type (void) {
4218 static volatile gsize tracker_store_turtle_task_type_id__volatile = 0;
4219 if (g_once_init_enter (&tracker_store_turtle_task_type_id__volatile)) {
4220 static const GTypeInfo g_define_type_info = { sizeof (TrackerStoreTurtleTaskClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tracker_store_turtle_task_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrackerStoreTurtleTask), 0, (GInstanceInitFunc) tracker_store_turtle_task_instance_init, NULL };
4221 GType tracker_store_turtle_task_type_id;
4222 tracker_store_turtle_task_type_id = g_type_register_static (TRACKER_STORE_TYPE_TASK, "TrackerStoreTurtleTask", &g_define_type_info, 0);
4223 g_once_init_leave (&tracker_store_turtle_task_type_id__volatile, tracker_store_turtle_task_type_id);
4224 }
4225 return tracker_store_turtle_task_type_id__volatile;
4226 }
4227
4228
4229 static void tracker_value_store_init (GValue* value) {
4230 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4231 value->data[0].v_pointer = NULL;
4232 #line 4233 "tracker-store.c"
4233 }
4234
4235
4236 static void tracker_value_store_free_value (GValue* value) {
4237 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4238 if (value->data[0].v_pointer) {
4239 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4240 tracker_store_unref (value->data[0].v_pointer);
4241 #line 4242 "tracker-store.c"
4242 }
4243 }
4244
4245
4246 static void tracker_value_store_copy_value (const GValue* src_value, GValue* dest_value) {
4247 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4248 if (src_value->data[0].v_pointer) {
4249 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4250 dest_value->data[0].v_pointer = tracker_store_ref (src_value->data[0].v_pointer);
4251 #line 4252 "tracker-store.c"
4252 } else {
4253 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4254 dest_value->data[0].v_pointer = NULL;
4255 #line 4256 "tracker-store.c"
4256 }
4257 }
4258
4259
4260 static gpointer tracker_value_store_peek_pointer (const GValue* value) {
4261 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4262 return value->data[0].v_pointer;
4263 #line 4264 "tracker-store.c"
4264 }
4265
4266
4267 static gchar* tracker_value_store_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
4268 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4269 if (collect_values[0].v_pointer) {
4270 #line 4271 "tracker-store.c"
4271 TrackerStore* object;
4272 object = collect_values[0].v_pointer;
4273 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4274 if (object->parent_instance.g_class == NULL) {
4275 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4276 return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
4277 #line 4278 "tracker-store.c"
4278 } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
4279 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4280 return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
4281 #line 4282 "tracker-store.c"
4282 }
4283 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4284 value->data[0].v_pointer = tracker_store_ref (object);
4285 #line 4286 "tracker-store.c"
4286 } else {
4287 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4288 value->data[0].v_pointer = NULL;
4289 #line 4290 "tracker-store.c"
4290 }
4291 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4292 return NULL;
4293 #line 4294 "tracker-store.c"
4294 }
4295
4296
4297 static gchar* tracker_value_store_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
4298 TrackerStore** object_p;
4299 object_p = collect_values[0].v_pointer;
4300 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4301 if (!object_p) {
4302 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4303 return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
4304 #line 4305 "tracker-store.c"
4305 }
4306 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4307 if (!value->data[0].v_pointer) {
4308 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4309 *object_p = NULL;
4310 #line 4311 "tracker-store.c"
4311 } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
4312 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4313 *object_p = value->data[0].v_pointer;
4314 #line 4315 "tracker-store.c"
4315 } else {
4316 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4317 *object_p = tracker_store_ref (value->data[0].v_pointer);
4318 #line 4319 "tracker-store.c"
4319 }
4320 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4321 return NULL;
4322 #line 4323 "tracker-store.c"
4323 }
4324
4325
4326 GParamSpec* tracker_param_spec_store (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) {
4327 TrackerParamSpecStore* spec;
4328 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4329 g_return_val_if_fail (g_type_is_a (object_type, TRACKER_TYPE_STORE), NULL);
4330 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4331 spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
4332 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4333 G_PARAM_SPEC (spec)->value_type = object_type;
4334 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4335 return G_PARAM_SPEC (spec);
4336 #line 4337 "tracker-store.c"
4337 }
4338
4339
4340 gpointer tracker_value_get_store (const GValue* value) {
4341 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4342 g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TRACKER_TYPE_STORE), NULL);
4343 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4344 return value->data[0].v_pointer;
4345 #line 4346 "tracker-store.c"
4346 }
4347
4348
4349 void tracker_value_set_store (GValue* value, gpointer v_object) {
4350 TrackerStore* old;
4351 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4352 g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TRACKER_TYPE_STORE));
4353 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4354 old = value->data[0].v_pointer;
4355 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4356 if (v_object) {
4357 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4358 g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TRACKER_TYPE_STORE));
4359 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4360 g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
4361 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4362 value->data[0].v_pointer = v_object;
4363 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4364 tracker_store_ref (value->data[0].v_pointer);
4365 #line 4366 "tracker-store.c"
4366 } else {
4367 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4368 value->data[0].v_pointer = NULL;
4369 #line 4370 "tracker-store.c"
4370 }
4371 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4372 if (old) {
4373 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4374 tracker_store_unref (old);
4375 #line 4376 "tracker-store.c"
4376 }
4377 }
4378
4379
4380 void tracker_value_take_store (GValue* value, gpointer v_object) {
4381 TrackerStore* old;
4382 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4383 g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TRACKER_TYPE_STORE));
4384 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4385 old = value->data[0].v_pointer;
4386 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4387 if (v_object) {
4388 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4389 g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TRACKER_TYPE_STORE));
4390 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4391 g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
4392 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4393 value->data[0].v_pointer = v_object;
4394 #line 4395 "tracker-store.c"
4395 } else {
4396 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4397 value->data[0].v_pointer = NULL;
4398 #line 4399 "tracker-store.c"
4399 }
4400 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4401 if (old) {
4402 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4403 tracker_store_unref (old);
4404 #line 4405 "tracker-store.c"
4405 }
4406 }
4407
4408
4409 static void tracker_store_class_init (TrackerStoreClass * klass) {
4410 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4411 tracker_store_parent_class = g_type_class_peek_parent (klass);
4412 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4413 TRACKER_STORE_CLASS (klass)->finalize = tracker_store_finalize;
4414 #line 4415 "tracker-store.c"
4415 }
4416
4417
4418 static void tracker_store_instance_init (TrackerStore * self) {
4419 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4420 self->ref_count = 1;
4421 #line 4422 "tracker-store.c"
4422 }
4423
4424
4425 static void tracker_store_finalize (TrackerStore* obj) {
4426 TrackerStore * self;
(emitted by gcc) 4427 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4428 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TRACKER_TYPE_STORE, TrackerStore);
(emitted by clang-analyzer)TODO: a detailed trace is available in the data model (not yet rendered in this report)
4429 #line 4430 "tracker-store.c"
4430 }
4431
4432
4433 GType tracker_store_get_type (void) {
4434 static volatile gsize tracker_store_type_id__volatile = 0;
4435 if (g_once_init_enter (&tracker_store_type_id__volatile)) {
4436 static const GTypeValueTable g_define_type_value_table = { tracker_value_store_init, tracker_value_store_free_value, tracker_value_store_copy_value, tracker_value_store_peek_pointer, "p", tracker_value_store_collect_value, "p", tracker_value_store_lcopy_value };
4437 static const GTypeInfo g_define_type_info = { sizeof (TrackerStoreClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tracker_store_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrackerStore), 0, (GInstanceInitFunc) tracker_store_instance_init, &g_define_type_value_table };
4438 static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
4439 GType tracker_store_type_id;
4440 tracker_store_type_id = g_type_register_fundamental (g_type_fundamental_next (), "TrackerStore", &g_define_type_info, &g_define_type_fundamental_info, 0);
4441 g_once_init_leave (&tracker_store_type_id__volatile, tracker_store_type_id);
4442 }
4443 return tracker_store_type_id__volatile;
4444 }
4445
4446
4447 gpointer tracker_store_ref (gpointer instance) {
4448 TrackerStore* self;
4449 self = instance;
4450 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4451 g_atomic_int_inc (&self->ref_count);
4452 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4453 return instance;
4454 #line 4455 "tracker-store.c"
4455 }
4456
4457
4458 void tracker_store_unref (gpointer instance) {
4459 TrackerStore* self;
4460 self = instance;
4461 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4462 if (g_atomic_int_dec_and_test (&self->ref_count)) {
4463 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4464 TRACKER_STORE_GET_CLASS (self)->finalize (self);
4465 #line 22 "/home/martyn/Source/tracker/src/tracker-store/tracker-store.vala"
4466 g_type_free_instance ((GTypeInstance *) self);
4467 #line 4468 "tracker-store.c"
4468 }
4469 }