diff --git a/manifest b/manifest index 16cb06510b..b24bad5c70 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Optimization\sto\svdbeRecordCompareInt()\smakes\sit\sslightly\ssmaller\sand\sfaster. -D 2016-09-15T00:04:46.412 +C Slight\ssize\sreduction\sand\sperformance\sincrease\sin\ssqlite3VdbeHalt(). +D 2016-09-15T00:32:42.176 F Makefile.in 6fd48ffcf7c2deea7499062d1f3747f986c19678 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc e1aa788e84f926e42239ee167c53f785bedacacd @@ -457,7 +457,7 @@ F src/vdbe.c bac0b2ed0ceb7efcbfb1a3c0731937c23a5ddfc8 F src/vdbe.h 67bc551f7faf04c33493892e4b378aada823ed10 F src/vdbeInt.h c59381049af5c7751a83456c39b80d1a6fde1f9d F src/vdbeapi.c a32d61b7dd05e6890d8fd44d2805f55e2f5ba9f3 -F src/vdbeaux.c 4fbd4f523cb1777b9f9def8bb95741bc2a23df15 +F src/vdbeaux.c 12831f89de66a23d575d129dc1bda543a09a80c7 F src/vdbeblob.c 3e82a797b60c3b9fed7b8de8c539ca7607874937 F src/vdbemem.c 357caac1a404f37ee6087b17613f92107c13f733 F src/vdbesort.c 91fda3909326860382b0ca8aa251e609c6a9d62c @@ -1525,7 +1525,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 55f7f8ee5b1c13aa219198b7ae66f59b3730f4c3 -R 099c616727c5eff5ff55b94090783a15 +P 5a2a7712cb8e0b686942dfab4e9e67b5ea7b2be3 +R c4d626707db93f22b9a341ed091c5be2 U drh -Z e0ac7cade838dc53109b734ea49fc780 +Z 45d9e586cdaa671f37537b02e0dbe0f4 diff --git a/manifest.uuid b/manifest.uuid index 73dc00155b..3cc2208344 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -5a2a7712cb8e0b686942dfab4e9e67b5ea7b2be3 \ No newline at end of file +5990a1bdb4a0734ff23015ada71cf02d0cb1381f \ No newline at end of file diff --git a/src/vdbeaux.c b/src/vdbeaux.c index c74e5c63f4..56f00efcfd 100644 --- a/src/vdbeaux.c +++ b/src/vdbeaux.c @@ -2569,10 +2569,12 @@ int sqlite3VdbeHalt(Vdbe *p){ ** one, or the complete transaction if there is no statement transaction. */ + assert( p->aOnceFlag!=0 || db->mallocFailed ); if( db->mallocFailed ){ p->rc = SQLITE_NOMEM_BKPT; + }else{ + memset(p->aOnceFlag, 0, p->nOnceFlag); } - if( p->aOnceFlag ) memset(p->aOnceFlag, 0, p->nOnceFlag); closeAllCursors(p); if( p->magic!=VDBE_MAGIC_RUN ){ return SQLITE_OK;