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_finalize (GObject *object) { PhotosTrackerController *self = PHOTOS_TRACKER_CONTROLLER (object); PhotosTrackerControllerPrivate *priv = self->priv; g_clear_error (&priv->queue_error); if (priv->current_query != NULL) photos_query_free (priv->current_query); G_OBJECT_CLASS (photos_tracker_controller_parent_class)->finalize (object); }
static void photos_tracker_controller_finalize (GObject *object) { PhotosTrackerController *self = PHOTOS_TRACKER_CONTROLLER (object); PhotosTrackerControllerPrivate *priv = self->priv; if (priv->item_mngr != NULL) g_object_remove_weak_pointer (G_OBJECT (priv->item_mngr), (gpointer *) &priv->item_mngr); if (priv->mode_cntrlr != NULL) g_object_remove_weak_pointer (G_OBJECT (priv->mode_cntrlr), (gpointer *) &priv->mode_cntrlr); g_clear_error (&priv->queue_error); if (priv->current_query != NULL) photos_query_free (priv->current_query); G_OBJECT_CLASS (photos_tracker_controller_parent_class)->finalize (object); }