aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordrh <>2021-03-21 18:23:48 +0000
committerdrh <>2021-03-21 18:23:48 +0000
commitd01206ffc2d091c41f25d14d02e0672c7da5e93c (patch)
tree30222b2b44153f024069f0b10191b38aa571df4c /src
parent97060e5aa279f6f8bbbbe15c2a0995d327588816 (diff)
downloadsqlite-d01206ffc2d091c41f25d14d02e0672c7da5e93c.tar.gz
sqlite-d01206ffc2d091c41f25d14d02e0672c7da5e93c.zip
Fix an assert() that in preupdate-hook logic (not normally built) thatsame-as-3.35.3
can be false when running VACUUM on a corrupt database file under PRAGMA writable_schema=ON. FossilOrigin-Name: 6bb2134027a12801de8e0c73482d94682f902024800a7e426614f65a2fe4f64c
Diffstat (limited to 'src')
-rw-r--r--src/insert.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/insert.c b/src/insert.c
index 62b880b22..89b66baf0 100644
--- a/src/insert.c
+++ b/src/insert.c
@@ -2428,7 +2428,7 @@ static void codeWithoutRowidPreupdate(
Vdbe *v = pParse->pVdbe;
int r = sqlite3GetTempReg(pParse);
assert( !HasRowid(pTab) );
- assert( 0==(pParse->db->mDbFlags & DBFLAG_Vacuum) );
+ assert( 0==(pParse->db->mDbFlags & DBFLAG_Vacuum) || CORRUPT_DB );
sqlite3VdbeAddOp2(v, OP_Integer, 0, r);
sqlite3VdbeAddOp4(v, OP_Insert, iCur, regData, r, (char*)pTab, P4_TABLE);
sqlite3VdbeChangeP5(v, OPFLAG_ISNOOP);