diff options
author | dan <dan@noemail.net> | 2019-07-15 13:58:28 +0000 |
---|---|---|
committer | dan <dan@noemail.net> | 2019-07-15 13:58:28 +0000 |
commit | e464802d49013ea759c30be7106976cbc2cde1e5 (patch) | |
tree | 24b2da79f370e15b417bdec2369c60a473f40b3f /src/vdbeblob.c | |
parent | 08e2e8e680147a52909b292d4c0628a94f928207 (diff) | |
download | sqlite-e464802d49013ea759c30be7106976cbc2cde1e5.tar.gz sqlite-e464802d49013ea759c30be7106976cbc2cde1e5.zip |
Fix a problem that could cause a crash if a blob handle were closed after the associated database handle was closed using sqlite3_close_v2().
FossilOrigin-Name: 52f463d29407fad691c42b13462880e7605603c9be9f480d18e953a0ef78149a
Diffstat (limited to 'src/vdbeblob.c')
-rw-r--r-- | src/vdbeblob.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/vdbeblob.c b/src/vdbeblob.c index 427979269..d34e3cf9f 100644 --- a/src/vdbeblob.c +++ b/src/vdbeblob.c @@ -355,11 +355,12 @@ int sqlite3_blob_close(sqlite3_blob *pBlob){ sqlite3 *db; if( p ){ + sqlite3_stmt *pStmt = p->pStmt; db = p->db; sqlite3_mutex_enter(db->mutex); - rc = sqlite3_finalize(p->pStmt); sqlite3DbFree(db, p); sqlite3_mutex_leave(db->mutex); + rc = sqlite3_finalize(pStmt); }else{ rc = SQLITE_OK; } |