[grilo-plugins/wip/carlosg/tracker3: 8/11] tracker3: Allow again full queries in grl_source_query()



commit 33aad82eba5a77e51a6f3f85ab1a5099a5fed04a
Author: Carlos Garnacho <carlosg gnome org>
Date:   Thu May 28 11:23:51 2020 +0200

    tracker3: Allow again full queries in grl_source_query()
    
    GNOME Music strongly relies on this.

 src/tracker3/grl-tracker-source-api.c | 22 +++++++++++++++-------
 1 file changed, 15 insertions(+), 7 deletions(-)
---
diff --git a/src/tracker3/grl-tracker-source-api.c b/src/tracker3/grl-tracker-source-api.c
index fa603d4e..cf820158 100644
--- a/src/tracker3/grl-tracker-source-api.c
+++ b/src/tracker3/grl-tracker-source-api.c
@@ -602,13 +602,21 @@ grl_tracker_source_query (GrlSource *source,
     goto send_error;
   }
 
-  statement =
-    grl_tracker_source_create_statement (GRL_TRACKER_SOURCE (source),
-                                         GRL_TRACKER_QUERY_ALL,
-                                         qs->options,
-                                         qs->keys,
-                                         qs->query,
-                                         &error);
+  if (g_ascii_strncasecmp (qs->query, "select ", 7) == 0) {
+    statement =
+      tracker_sparql_connection_query_statement (GRL_TRACKER_SOURCE (source)->priv->tracker_connection,
+                                                 qs->query,
+                                                 NULL, &error);
+  } else {
+    statement =
+      grl_tracker_source_create_statement (GRL_TRACKER_SOURCE (source),
+                                           GRL_TRACKER_QUERY_ALL,
+                                           qs->options,
+                                           qs->keys,
+                                           qs->query,
+                                           &error);
+  }
+
   if (!statement)
     goto send_error;
 


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