[tracker/wip/carlosg/coverity-fixes: 1/8] libtracker-data: Add _optional() to complement _accept()
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker/wip/carlosg/coverity-fixes: 1/8] libtracker-data: Add _optional() to complement _accept()
- Date: Wed, 4 Mar 2020 22:36:01 +0000 (UTC)
commit f44a37d75507e14c2af4505457d251f03b5eb59f
Author: Carlos Garnacho <carlosg gnome org>
Date: Wed Mar 4 19:25:47 2020 +0100
libtracker-data: Add _optional() to complement _accept()
We sometimes do _accept() on things without checking the return value as
those are optional tokens, we want to advance to the next node if it was
there, and stay where we are if it isn't.
Using _accept() for that is just fine, but trips Coverity as the return
value sometimes go unchecked as opposed to another myriad times.
Add an _optional() function so that it's evident to the reader, and static
analysis.
CIDs: #1491433, #1491438, #1491440, #1491442, #1491443, #1491445
src/libtracker-data/tracker-sparql.c | 18 +++++++++++++-----
1 file changed, 13 insertions(+), 5 deletions(-)
---
diff --git a/src/libtracker-data/tracker-sparql.c b/src/libtracker-data/tracker-sparql.c
index 84130b916..71e0029b3 100644
--- a/src/libtracker-data/tracker-sparql.c
+++ b/src/libtracker-data/tracker-sparql.c
@@ -416,6 +416,14 @@ _expect (TrackerSparql *sparql,
}
}
+static inline void
+_optional (TrackerSparql *sparql,
+ TrackerGrammarRuleType type,
+ guint value)
+{
+ (void) _accept (sparql, type, value);
+}
+
static inline void
_step (TrackerSparql *sparql)
{
@@ -2295,7 +2303,7 @@ translate_Update (TrackerSparql *sparql,
if (sparql->blank_nodes)
g_variant_builder_close (sparql->blank_nodes);
- _accept (sparql, RULE_TYPE_LITERAL, LITERAL_SEMICOLON);
+ _optional (sparql, RULE_TYPE_LITERAL, LITERAL_SEMICOLON);
if (_check_in_rule (sparql, NAMED_RULE_Update))
_call_rule (sparql, NAMED_RULE_Update, error);
@@ -2978,7 +2986,7 @@ translate_WhereClause (TrackerSparql *sparql,
*/
child = _append_placeholder (sparql);
old = tracker_sparql_swap_builder (sparql, child);
- _accept (sparql, RULE_TYPE_LITERAL, LITERAL_WHERE);
+ _optional (sparql, RULE_TYPE_LITERAL, LITERAL_WHERE);
_call_rule (sparql, NAMED_RULE_GroupGraphPattern, error);
if (!tracker_string_builder_is_empty (child)) {
@@ -4228,7 +4236,7 @@ translate_GraphOrDefault (TrackerSparql *sparql,
tracker_token_unset (&sparql->current_state.graph);
sparql->current_state.graph_op = GRAPH_OP_DEFAULT;
} else {
- _accept (sparql, RULE_TYPE_LITERAL, LITERAL_GRAPH);
+ _optional (sparql, RULE_TYPE_LITERAL, LITERAL_GRAPH);
_call_rule (sparql, NAMED_RULE_iri, error);
_init_token (&sparql->current_state.graph,
sparql->current_state.prev_node, sparql);
@@ -4309,7 +4317,7 @@ translate_Quads (TrackerSparql *sparql,
while (_check_in_rule (sparql, NAMED_RULE_QuadsNotTriples)) {
_call_rule (sparql, NAMED_RULE_QuadsNotTriples, error);
- _accept (sparql, RULE_TYPE_LITERAL, LITERAL_DOT);
+ _optional (sparql, RULE_TYPE_LITERAL, LITERAL_DOT);
if (_check_in_rule (sparql, NAMED_RULE_TriplesTemplate)) {
_call_rule (sparql, NAMED_RULE_TriplesTemplate, error);
@@ -4412,7 +4420,7 @@ translate_GroupGraphPatternSub (TrackerSparql *sparql,
* query preparation, so they have been left out at the moment.
*/
_call_rule (sparql, NAMED_RULE_GraphPatternNotTriples, error);
- _accept (sparql, RULE_TYPE_LITERAL, LITERAL_DOT);
+ _optional (sparql, RULE_TYPE_LITERAL, LITERAL_DOT);
if (_check_in_rule (sparql, NAMED_RULE_TriplesBlock)) {
gboolean do_join;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]