[gnome-photos] tracker-controller: Handle tracker_sparql_cursor_next_finish errors



commit 9d9743b86190f69ca1dd0322b35472f5eca4ee23
Author: Debarshi Ray <debarshir gnome org>
Date:   Tue Nov 29 14:15:38 2016 +0100

    tracker-controller: Handle tracker_sparql_cursor_next_finish errors
    
    https://bugzilla.gnome.org/show_bug.cgi?id=763908

 src/photos-tracker-controller.c |   14 +++++++++++++-
 1 files changed, 13 insertions(+), 1 deletions(-)
---
diff --git a/src/photos-tracker-controller.c b/src/photos-tracker-controller.c
index aa70839..5ddd6ad 100644
--- a/src/photos-tracker-controller.c
+++ b/src/photos-tracker-controller.c
@@ -136,6 +136,7 @@ photos_tracker_controller_cursor_next (GObject *source_object, GAsyncResult *res
 {
   PhotosTrackerController *self = PHOTOS_TRACKER_CONTROLLER (user_data);
   PhotosTrackerControllerPrivate *priv;
+  GError *error;
   TrackerSparqlCursor *cursor = TRACKER_SPARQL_CURSOR (source_object);
   gboolean success;
   gint64 now;
@@ -145,7 +146,18 @@ photos_tracker_controller_cursor_next (GObject *source_object, GAsyncResult *res
   if (priv->item_mngr == NULL)
     goto out;
 
-  success = tracker_sparql_cursor_next_finish (cursor, res, NULL); /* TODO: use GError */
+  error = NULL;
+  /* Note that tracker_sparql_cursor_next_finish can return FALSE even
+   * without an error.
+   */
+  success = tracker_sparql_cursor_next_finish (cursor, res, &error);
+  if (error != NULL)
+    {
+      photos_tracker_controller_query_finished (self, error);
+      g_error_free (error);
+      goto out;
+    }
+
   if (!success)
     {
       tracker_sparql_cursor_close (cursor);


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