From a411e28c18f206d23c6a10582c17d31d453b2fa7 Mon Sep 17 00:00:00 2001 From: mill-j Date: Sun, 25 Apr 2021 12:41:22 -0500 Subject: [PATCH] Fixed SQLITE_BUSY Bug Database::HasSample failed to close database when sample found. --- src/Database.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/Database.cpp b/src/Database.cpp index 0df3632..2e017fc 100644 --- a/src/Database.cpp +++ b/src/Database.cpp @@ -116,7 +116,7 @@ void Database::InsertSample(int favorite, std::string filename, if (rc != SQLITE_DONE) { - wxLogDebug("No data inserted. Error code: %d", rc); + wxLogDebug("No data inserted. Error code: %d: Msg: %s", rc , sqlite3_errmsg(m_Database)); } rc = sqlite3_finalize(m_Stmt); @@ -127,7 +127,7 @@ void Database::InsertSample(int favorite, std::string filename, // "Error! Cannot insert data into table.", // "Error", wxOK | wxICON_ERROR); // msgDialog.ShowModal(); - wxLogDebug("Error! Cannot insert data into table. Error code: %d", rc); + wxLogDebug("Error! Cannot insert data into table. Error code: %d: Msg: %s", rc , sqlite3_errmsg(m_Database)); } else { @@ -746,6 +746,7 @@ wxVector> Database::FilterDatabaseBySampleName(wxVector(sqlite3_column_text(m_Stmt, 0))); - return true; + haveSample = true; } rc = sqlite3_finalize(m_Stmt); @@ -778,6 +779,8 @@ bool Database::HasSample(std::string filename) } sqlite3_close(m_Database); + + return haveSample; } catch (const std::exception &exception) {