From 77e5795e8d09ee6c9798f144ae36242e901ae3b7 Mon Sep 17 00:00:00 2001 From: Stelios Fragkakis <52996999+stelfrag@users.noreply.github.com> Date: Fri, 13 Oct 2023 21:16:46 +0300 Subject: Fix access of memory after free (#16185) * Proper init to avoid use after free * CID 400083 Unchecked return value --- database/rrdcalc.c | 1 + database/sqlite/sqlite_functions.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/database/rrdcalc.c b/database/rrdcalc.c index 3822aa64b7..620883ec2f 100644 --- a/database/rrdcalc.c +++ b/database/rrdcalc.c @@ -135,6 +135,7 @@ static STRING *rrdcalc_replace_variables_with_rrdset_labels(const char *line, RR label_val[i - RRDCALC_VAR_LABEL_LEN - 1] = '\0'; if(likely(rc->rrdset && rc->rrdset->rrdlabels)) { + lbl_value = NULL; rrdlabels_get_value_strdup_or_null(rc->rrdset->rrdlabels, &lbl_value, label_val); if (lbl_value) { char *buf = find_and_replace(temp, var, lbl_value, m); diff --git a/database/sqlite/sqlite_functions.c b/database/sqlite/sqlite_functions.c index 0a033de34c..e081fe9aed 100644 --- a/database/sqlite/sqlite_functions.c +++ b/database/sqlite/sqlite_functions.c @@ -414,7 +414,7 @@ int sql_init_database(db_check_action_type_t rebuild, int memory) sqlite3_free(err_msg); } else { - db_execute(db_meta, "select count(*) from sqlite_master limit 0"); + (void) db_execute(db_meta, "select count(*) from sqlite_master limit 0"); (void) sqlite3_close(db_meta); } return 1; -- cgit v1.2.3