From: drh Date: Tue, 12 Jan 2016 02:28:19 +0000 (+0000) Subject: Make sure all bytes of the WAL file are initialized even if the checksums are X-Git-Tag: version-3.11.0~161 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=869aaf0941f440f5ded3e1757da9f24058e76220;p=thirdparty%2Fsqlite.git Make sure all bytes of the WAL file are initialized even if the checksums are not being computed until commit due to WAL overwrite. FossilOrigin-Name: 1f44a9bdc1577aed088d9b91882527228015dcd3 --- diff --git a/manifest b/manifest index 6575eb3b4e..52e6f9a768 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\san\suninitialized\sfield\sin\sthe\sSelect\sobject\swhen\sSELECTTRACE\sis\senabled. -D 2016-01-12T02:00:24.480 +C Make\ssure\sall\sbytes\sof\sthe\sWAL\sfile\sare\sinitialized\seven\sif\sthe\schecksums\sare\nnot\sbeing\scomputed\suntil\scommit\sdue\sto\sWAL\soverwrite. +D 2016-01-12T02:28:19.320 F Makefile.in 7c8cc4c2f0179efc6fa9492141d1fb65f4807054 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc e45d8b9b56dfa3f2cd860b2c28bd9d304513b042 @@ -409,7 +409,7 @@ F src/vdbesort.c a7ec02da4494c59dfd071126dd3726be5a11459d F src/vdbetrace.c 8befe829faff6d9e6f6e4dee5a7d3f85cc85f1a0 F src/vtab.c 2a8b44aa372c33f6154208e7a7f6c44254549806 F src/vxworks.h 974e7d9a98f602d6310d563e1dc4e08f9fc48e47 -F src/wal.c 92ca9e7923c337c497e4c9aa7edac800e269a1d8 +F src/wal.c ec116eb4dd257561b0b910b422eb0fc459c82c28 F src/wal.h 907943dfdef10b583e81906679a347e0ec6f1b1b F src/walker.c 0f142b5bd3ed2041fc52d773880748b212e63354 F src/where.c bb69654f841ae7af0a20cc6fb8f0ac57901c31be @@ -1407,7 +1407,7 @@ F tool/vdbe_profile.tcl 246d0da094856d72d2c12efec03250d71639d19f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 48bd54594752d5be3337f12c72f28d2080cb630b F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P 75cd41ff179e29c5d45f9d7fed784bc339e0d7a0 -R f2bd43aeba2b6092057d74bc062b9600 +P fc62851667d9120f98a2641c87bbc5a2485482b2 +R 5117171a7e356e05f85dd4c6a03b017d U drh -Z 0ab9387fbd675bc198faa7ea2440e420 +Z 900d53369fb7ca05847989ae4b11e011 diff --git a/manifest.uuid b/manifest.uuid index cb7f85349f..b281737f3f 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -fc62851667d9120f98a2641c87bbc5a2485482b2 \ No newline at end of file +1f44a9bdc1577aed088d9b91882527228015dcd3 \ No newline at end of file diff --git a/src/wal.c b/src/wal.c index ae6a54849a..9d711198a8 100644 --- a/src/wal.c +++ b/src/wal.c @@ -708,6 +708,8 @@ static void walEncodeFrame( sqlite3Put4byte(&aFrame[16], aCksum[0]); sqlite3Put4byte(&aFrame[20], aCksum[1]); + }else{ + memset(&aFrame[8], 0, 16); } }