static void photos_tracker_controller_perform_current_query (PhotosTrackerController *self) { PhotosTrackerControllerPrivate *priv = self->priv; if (priv->current_query != NULL) photos_query_free (priv->current_query); priv->current_query = PHOTOS_TRACKER_CONTROLLER_GET_CLASS (self)->get_query (self); g_return_if_fail (priv->current_query != NULL); g_cancellable_reset (priv->cancellable); if (G_UNLIKELY (priv->queue == NULL)) { photos_tracker_controller_query_error (self, priv->queue_error); return; } photos_tracker_queue_select (priv->queue, priv->current_query->sparql, priv->cancellable, photos_tracker_controller_query_executed, g_object_ref (self), g_object_unref); }
static void photos_tracker_controller_query_finished (PhotosTrackerController *self, GError *error) { PhotosTrackerControllerPrivate *priv = self->priv; photos_tracker_controller_set_query_status (self, FALSE); if (error != NULL) photos_tracker_controller_query_error (self, error); else photos_offset_controller_reset_count (priv->offset_cntrlr); if (priv->query_queued) { priv->query_queued = FALSE; photos_tracker_controller_refresh_internal (self, priv->query_queued_flags); } }