]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix a potential infinite loop (inserted by the previous check-in)
authordrh <drh@noemail.net>
Fri, 16 Dec 2011 05:09:46 +0000 (05:09 +0000)
committerdrh <drh@noemail.net>
Fri, 16 Dec 2011 05:09:46 +0000 (05:09 +0000)
on the multiplexWrite() method of the multiplexor.

FossilOrigin-Name: 022bf427c2edfe494ec7c222f436953ff56574a6

manifest
manifest.uuid
src/test_multiplex.c

index a12b10d33a131dae4e64c3171ac1da58dbb4f7fe..88df5c4fc4a12fa028393d698cb684cc5733fc72 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C The\sxTruncate\smethod\sfor\sthe\smultiplexor\snow\schanges\ssurplus\soverflow\nfiles\sto\szero-length\sby\sdefault.\s\sOr\sif\sthe\s"truncate"\squery\sparameter\s\nis\sused,\sit\sactually\sdeletes\sthe\ssurplus\soverflow\sfiles.\s\sThis\sallows\nVACUUM\sto\sshrink\sthe\sdatabase\sagain.
-D 2011-12-16T04:57:32.390
+C Fix\sa\spotential\sinfinite\sloop\s(inserted\sby\sthe\sprevious\scheck-in)\non\sthe\smultiplexWrite()\smethod\sof\sthe\smultiplexor.
+D 2011-12-16T05:09:46.415
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in 5b4a3e12a850b021547e43daf886b25133b44c07
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -214,7 +214,7 @@ F src/test_intarray.h 489edb9068bb926583445cb02589344961054207
 F src/test_journal.c 03313c693cca72959dcaaf79f8d76f21c01e19ff
 F src/test_loadext.c df586c27176e3c2cb2e099c78da67bf14379a56e
 F src/test_malloc.c 8d416f29ad8573f32601f6056c9d2b17472e9ad5
-F src/test_multiplex.c 993f930c9c8e1aa0f4fe7b5a74c9a60fbf3447e4
+F src/test_multiplex.c ccc5f2feae52c4fbef1a88205667a6bcf2078844
 F src/test_multiplex.h e99c571bc4968b7a9363b661481f3934bfead61d
 F src/test_mutex.c a6bd7b9cf6e19d989e31392b06ac8d189f0d573e
 F src/test_onefile.c 40cf9e212a377a6511469384a64b01e6e34b2eec
@@ -978,7 +978,7 @@ F tool/tostr.awk e75472c2f98dd76e06b8c9c1367f4ab07e122d06
 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
 F tool/warnings-clang.sh 9f406d66e750e8ac031c63a9ef3248aaa347ef2a
 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381
-P e9177f7d4ec19f0841d0613990d2fb5725700ba1
-R c09d355f93cdab856d4274295151320d
+P 5aefef04d6cc3b734c3f05e036b3869a52248f4d
+R 8d7b158bf3a519193898c5ead6ba7790
 U drh
-Z 4efbc5088c9568c2b7090122e09b39c8
+Z d8c8d1df41588adf9be8799f58ddd721
index 4852f049679c529245e707506eb3163846cac399..8cbc3f560cca8dd18ebca7b1958166684f5fcb22 100644 (file)
@@ -1 +1 @@
-5aefef04d6cc3b734c3f05e036b3869a52248f4d
\ No newline at end of file
+022bf427c2edfe494ec7c222f436953ff56574a6
\ No newline at end of file
index f01a7f585b8369b4b1c138db076edb55bd7b19f2..47d553cc274a889c753287c879eca9e67daa59c4 100644 (file)
@@ -305,7 +305,7 @@ static sqlite3_file *multiplexSubOpen(
 
   *rc = multiplexSubFilename(pGroup, iChunk);
   if( (*rc)==SQLITE_OK && (pSubOpen = pGroup->aReal[iChunk].p)==0 ){
-    int flags, rc2, bExists;
+    int flags, bExists;
     if( iChunk==0 ) createFlag = (pGroup->flags & SQLITE_OPEN_CREATE)!=0;
     flags = pGroup->flags;
     if( createFlag ){
@@ -324,9 +324,9 @@ static sqlite3_file *multiplexSubOpen(
       return 0;
     }
     pGroup->aReal[iChunk].p = pSubOpen;
-    rc2 = pOrigVfs->xOpen(pOrigVfs, pGroup->aReal[iChunk].z, pSubOpen,
+    *rc = pOrigVfs->xOpen(pOrigVfs, pGroup->aReal[iChunk].z, pSubOpen,
                           flags, pOutFlags);
-    if( rc2!=SQLITE_OK ){
+    if( (*rc)!=SQLITE_OK ){
       sqlite3_free(pSubOpen);
       pGroup->aReal[iChunk].p = 0;
       return 0;