| Index: third_party/sqlite/src/test/corruptC.test
|
| diff --git a/third_party/sqlite/src/test/corruptC.test b/third_party/sqlite/src/test/corruptC.test
|
| index 80c3c09f61375a1f4c64572c699bb956f253c87c..f404e4fb5b0355ba92151a1c043aadfc288031c2 100644
|
| --- a/third_party/sqlite/src/test/corruptC.test
|
| +++ b/third_party/sqlite/src/test/corruptC.test
|
| @@ -100,6 +100,12 @@ do_test corruptC-2.1 {
|
| } {1 {database disk image is malformed}}
|
|
|
| # test that a corrupt content offset size is handled (seed 5649)
|
| +#
|
| +# Update 2016-12-27: As of check-in [0b86fbca66] "In sqlite3BtreeInsert() when
|
| +# replacing a re-existing row, try to overwrite the cell directly rather than
|
| +# deallocate and reallocate the cell" on 2016-12-09, this test case no longer
|
| +# detects the offset size problem during the UPDATE. We have to run a subsequent
|
| +# integrity_check to see it.
|
| do_test corruptC-2.2 {
|
| db close
|
| forcecopy test.bu test.db
|
| @@ -117,8 +123,9 @@ do_test corruptC-2.2 {
|
| hexio_write test.db 3746 [format %02x 0x9a]
|
|
|
| sqlite3 db test.db
|
| - catchsql {UPDATE t1 SET y=1}
|
| -} {1 {database disk image is malformed}}
|
| + db eval {UPDATE t1 SET y=1}
|
| + db eval {PRAGMA integrity_check}
|
| +} {/Offset .* out of range/}
|
|
|
| # test that a corrupt free cell size is handled (seed 13329)
|
| do_test corruptC-2.3 {
|
| @@ -157,7 +164,7 @@ do_test corruptC-2.5 {
|
| catchsql {BEGIN; UPDATE t2 SET y='abcdef-uvwxyz'; ROLLBACK;}
|
| catchsql {PRAGMA integrity_check}
|
| } {0 {{*** in database main ***
|
| -Page 4: btreeInitPage() returns error code 11}}}
|
| +On tree page 4 cell 19: Extends off end of page}}}
|
|
|
| # {0 {{*** in database main ***
|
| # Corruption detected in cell 710 on page 4
|
|
|