diff options
author | Stelios Fragkakis <52996999+stelfrag@users.noreply.github.com> | 2024-04-17 18:09:13 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-17 18:09:13 +0300 |
commit | 2d70c2e0c9786706cf5b019e33bd24b30d06cb4c (patch) | |
tree | 38597ee47a0bfeef195d9dd8f0bd424ed3c59617 | |
parent | 49496d4886880a550873a525b85f7a23f07faa6a (diff) |
Fix coverity issue 425241 (#17424)
Add check for statement preparation failure
Properly check for bind failure
-rw-r--r-- | src/database/sqlite/sqlite_health.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/database/sqlite/sqlite_health.c b/src/database/sqlite/sqlite_health.c index f9d4bb8c6c..8ce9b04942 100644 --- a/src/database/sqlite/sqlite_health.c +++ b/src/database/sqlite/sqlite_health.c @@ -1423,6 +1423,7 @@ void sql_alert_transitions( if (unlikely(!nodes)) return; + int param = 0; if (transition) { if (uuid_parse(transition, transition_uuid)) { error_report("Invalid transition given %s", transition); @@ -1430,12 +1431,12 @@ void sql_alert_transitions( } rc = sqlite3_prepare_v2(db_meta, SQL_SEARCH_ALERT_TRANSITION_DIRECT, -1, &res, 0); - - rc = sqlite3_bind_blob(res, 1, &transition_uuid, sizeof(transition_uuid), SQLITE_STATIC); if (unlikely(rc != SQLITE_OK)) { - error_report("Failed to bind transition_id parameter"); - goto done; + error_report("Failed to prepare statement to search transition"); + goto done_only_drop; } + + SQLITE_BIND_FAIL(done, sqlite3_bind_blob(res, ++param, &transition_uuid, sizeof(transition_uuid), SQLITE_STATIC)); goto run_query; } @@ -1496,7 +1497,6 @@ void sql_alert_transitions( goto done_only_drop; } - int param = 0; SQLITE_BIND_FAIL(done, sqlite3_bind_int64(res, ++param, (sqlite3_int64)(after * USEC_PER_SEC))); SQLITE_BIND_FAIL(done, sqlite3_bind_int64(res, ++param, (sqlite3_int64)(before * USEC_PER_SEC))); |