diff options
author | Carlos Garnacho <carlosg@gnome.org> | 2020-05-28 11:23:51 +0200 |
---|---|---|
committer | Jean Felder <jean.felder@gmail.com> | 2020-08-21 15:05:11 +0000 |
commit | 353f6346584ce31b9a7dd580bbc2b452b0f7d1f3 (patch) | |
tree | a7b6bce0d6343ce71518d598fe6e7ed8af4cee25 | |
parent | f3d76edc2898c30310a00d8f98cecafba0462dbc (diff) | |
download | grilo-plugins-353f6346584ce31b9a7dd580bbc2b452b0f7d1f3.tar.gz |
tracker3: Allow again full queries in grl_source_query()
GNOME Music strongly relies on this.
-rw-r--r-- | src/tracker3/grl-tracker-source-api.c | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/src/tracker3/grl-tracker-source-api.c b/src/tracker3/grl-tracker-source-api.c index fa603d4..cf82015 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; |