SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, NULL);
if (ret != SQLITE_OK) {
_LOGE("open db failed: %d", ret);
+ sqlite3_close_v2(db);
return PM_PARSER_R_ERROR;
}
SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, NULL);
if (ret != SQLITE_OK) {
_LOGE("open db failed: %d", ret);
+ sqlite3_close_v2(db);
return PM_PARSER_R_ERROR;
}
int persist_wal = 1;
ret = sqlite3_open_v2(path, db, flags, NULL);
- if (ret != SQLITE_OK)
+ if (ret != SQLITE_OK) {
+ sqlite3_close_v2(*db);
return ret;
+ }
ret = sqlite3_busy_handler(*db, __db_busy_handler, (void *)path);
if (ret != SQLITE_OK) {
int no_checkpoint = 1;
ret = sqlite3_open_v2(path, db, flags, NULL);
- if (ret != SQLITE_OK)
+ if (ret != SQLITE_OK) {
+ sqlite3_close_v2(*db);
return ret;
+ }
ret = sqlite3_busy_handler(*db, __db_busy_handler, NULL);
if (ret != SQLITE_OK) {