SUMMARY: AddressSanitizer: 350261968 byte(s) leaked in 487181 allocation(s)
Везде где есть prepare или step оно считает за утечку. А в процессах действительно видно как идет зажор памяти:
int db_query(void *db, char *query)
{
sqlsdb_state *state = (sqlsdb_state*) db;
sqlite3_stmt *stmt = NULL;
int rc;
rc = sqlite3_prepare_v2(state->sqlite, query, -1, &stmt, NULL);
if(rc != SQLITE_OK) return rc;
rc = sqlite3_step(stmt);
sqlite3_finalize(stmt);
return rc;
}
Пробовал и с бибилиотекой из состава Ubuntu 18.04, так и с https://www.sqlite.org/2019/sqlite-amalgamation-3290000.zip прямо подключенного к проекту, чтобы яснее видеть отладочные символы и места утечек - результат один
Иногда еще показывает на sqlite3_open_v2 как место утечки, хотя close_v2 нормально вызывается
ЧЯДНТ?