[tracker/wip/carlosg/sparql1.1: 57/145] libtracker-data: Error out if '*' is used but there are no variables



commit 5f34be19d57e044ccbe4540252b262730a3c9426
Author: Carlos Garnacho <carlosg gnome org>
Date:   Thu May 30 13:57:05 2019 +0200

    libtracker-data: Error out if '*' is used but there are no variables

 src/libtracker-data/tracker-sparql.c | 7 +++++++
 1 file changed, 7 insertions(+)
---
diff --git a/src/libtracker-data/tracker-sparql.c b/src/libtracker-data/tracker-sparql.c
index ce730465a..22bd29af2 100644
--- a/src/libtracker-data/tracker-sparql.c
+++ b/src/libtracker-data/tracker-sparql.c
@@ -1655,6 +1655,13 @@ translate_SelectClause (TrackerSparql  *sparql,
                TrackerVariable *var;
                GHashTableIter iter;
 
+               if (!select_context->variables) {
+                       g_set_error (error, TRACKER_SPARQL_ERROR,
+                                    TRACKER_SPARQL_ERROR_TYPE,
+                                    "Glob used but no variables defined");
+                       return FALSE;
+               }
+
                g_hash_table_iter_init (&iter, select_context->variables);
 
                while (g_hash_table_iter_next (&iter, NULL, (gpointer *) &var)) {


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