| Index: third_party/sqlite/src/test/walfault.test | 
| diff --git a/third_party/sqlite/src/test/walfault.test b/third_party/sqlite/src/test/walfault.test | 
| index 3a90f9c693d1b1c95f9bf5c091cea1391a97c916..4e7064d53b1a32c87978e02522b4c98e63a17eae 100644 | 
| --- a/third_party/sqlite/src/test/walfault.test | 
| +++ b/third_party/sqlite/src/test/walfault.test | 
| @@ -123,7 +123,6 @@ do_faultsim_test walfault-3 -prep { | 
| faultsim_test_result {0 {}} | 
| } | 
|  | 
| - | 
| #-------------------------------------------------------------------------- | 
| # | 
| if {[permutation] != "inmemory_journal"} { | 
| @@ -141,7 +140,9 @@ if {[permutation] != "inmemory_journal"} { | 
| SELECT * FROM t1; | 
| } | 
| } -test { | 
| -    faultsim_test_result {0 {wal 0 7 7 a b}} | 
| +    # Update: The following changed from {0 {wal 0 7 7 a b}} as a result | 
| +    # of PSOW being set by default. | 
| +    faultsim_test_result {0 {wal 0 5 5 a b}} | 
| faultsim_integrity_check | 
| } | 
| } | 
| @@ -465,7 +466,7 @@ do_test walfault-13-pre-1 { | 
| COMMIT; | 
| } | 
| faultsim_save_and_close | 
| -  file delete sv_test.db-shm | 
| +  delete_file sv_test.db-shm | 
| } {} | 
|  | 
| do_faultsim_test walfault-13.1 -prep { | 
| @@ -542,10 +543,48 @@ do_faultsim_test walfault-14 -prep { | 
| INSERT INTO abc VALUES(randomblob(1500)); | 
| } | 
| } -test { | 
| -  faultsim_test_result {0 {0 10 10}} | 
| +  faultsim_test_result {0 {0 9 9}} | 
| faultsim_integrity_check | 
| set nRow [db eval {SELECT count(*) FROM abc}] | 
| if {!(($nRow==2 && $testrc) || $nRow==3)} { error "Bad db content" } | 
| } | 
|  | 
| +#------------------------------------------------------------------------- | 
| +# Test fault-handling when switching out of exclusive-locking mode. | 
| +# | 
| +do_test walfault-14-pre { | 
| +  faultsim_delete_and_reopen | 
| +  execsql { | 
| +    PRAGMA auto_vacuum = 0; | 
| +    PRAGMA journal_mode = WAL; | 
| +    BEGIN; | 
| +      CREATE TABLE abc(a PRIMARY KEY); | 
| +      INSERT INTO abc VALUES(randomblob(1500)); | 
| +      INSERT INTO abc VALUES(randomblob(1500)); | 
| +    COMMIT; | 
| +  } | 
| +  faultsim_save_and_close | 
| +} {} | 
| +do_faultsim_test walfault-14 -prep { | 
| +  faultsim_restore_and_reopen | 
| +  execsql { | 
| +    SELECT count(*) FROM abc; | 
| +    PRAGMA locking_mode = exclusive; | 
| +    BEGIN; | 
| +      INSERT INTO abc VALUES(randomblob(1500)); | 
| +    COMMIT; | 
| +  } | 
| +} -body { | 
| +  db eval { | 
| +    PRAGMA locking_mode = normal; | 
| +    BEGIN; | 
| +      INSERT INTO abc VALUES(randomblob(1500)); | 
| +    COMMIT; | 
| +  } | 
| +} -test { | 
| +  faultsim_integrity_check | 
| +  set nRow [db eval {SELECT count(*) FROM abc}] | 
| +  if {$nRow!=3 && $nRow!=4} { error "Bad db content" } | 
| +} | 
| + | 
| finish_test | 
|  |