diff options
author | Carlos Garnacho <carlosg@gnome.org> | 2023-01-17 02:38:19 +0100 |
---|---|---|
committer | Carlos Garnacho <carlosg@gnome.org> | 2023-01-17 11:29:27 +0100 |
commit | 319af89b26b3a99107ff22d07ec4d2eb255ea40b (patch) | |
tree | 7bfe26f8b6a4691a777efd2efda29f22c3965fc5 /src/libtracker-sparql/core | |
parent | 827ec7befce24d3e4a949f469bf41ad929caaa8f (diff) | |
download | tracker-319af89b26b3a99107ff22d07ec4d2eb255ea40b.tar.gz |
core: Handle G_TYPE_BOOLEAN specifically when binding values to statement
Do not let it fall through the g_value_convert() catchall case.
Diffstat (limited to 'src/libtracker-sparql/core')
-rw-r--r-- | src/libtracker-sparql/core/tracker-db-interface-sqlite.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/libtracker-sparql/core/tracker-db-interface-sqlite.c b/src/libtracker-sparql/core/tracker-db-interface-sqlite.c index 4696319ec..13ff41d84 100644 --- a/src/libtracker-sparql/core/tracker-db-interface-sqlite.c +++ b/src/libtracker-sparql/core/tracker-db-interface-sqlite.c @@ -3254,8 +3254,8 @@ tracker_db_statement_bind_bytes (TrackerDBStatement *stmt, void tracker_db_statement_bind_value (TrackerDBStatement *stmt, - int index, - const GValue *value) + int index, + const GValue *value) { GType type; @@ -3278,6 +3278,10 @@ tracker_db_statement_bind_value (TrackerDBStatement *stmt, } else if (type == G_TYPE_STRING) { sqlite3_bind_text (stmt->stmt, index + 1, g_value_get_string (value), -1, SQLITE_TRANSIENT); + } else if (type == G_TYPE_BOOLEAN) { + sqlite3_bind_text (stmt->stmt, index + 1, + g_value_get_boolean (value) ? "true" : "false", + -1, 0); } else if (type == G_TYPE_BYTES) { GBytes *bytes; gconstpointer data; |