From: drh Date: Thu, 4 Jan 2007 01:20:11 +0000 (+0000) Subject: Add a comment to vdbe.c to explain the use of an uninitialized variable. (CVS 3551) X-Git-Tag: version-3.6.10~2617 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0bc5370cac7d17f7e2cc3540fe5df2e21085714c;p=thirdparty%2Fsqlite.git Add a comment to vdbe.c to explain the use of an uninitialized variable. (CVS 3551) FossilOrigin-Name: 1773eb7badf105b0e23316d4236903049c354c71 --- diff --git a/manifest b/manifest index 1082d9a618..396e79887a 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Clean\sup\smemory\sleaks\sand\suninitialized\svariables\sdetected\sby\svalgrind.\nIdentify\sall\stests\swhere\swe\sdeliberately\sderefence\sfreed\smemory\sby\sadding\na\s"-misuse"\stag.\s(CVS\s3550) -D 2007-01-03T23:37:28 +C Add\sa\scomment\sto\svdbe.c\sto\sexplain\sthe\suse\sof\san\suninitialized\svariable.\s(CVS\s3551) +D 2007-01-04T01:20:11 F Makefile.in 63a71177ed4355c829229affe11167bd28c85884 F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028 @@ -121,7 +121,7 @@ F src/update.c 951f95ef044cf6d28557c48dc35cb0711a0b9129 F src/utf.c 67ecb1032bc0b42c105e88d65ef9d9f626eb0e1f F src/util.c 91d4cb189476906639ae611927d939691d1365f6 F src/vacuum.c b4569b08aaa5afb141af3f76d0315745db4e9e4b -F src/vdbe.c 15060804371ab78d44a131061ae85c4c66dfff7c +F src/vdbe.c 180ea84f8087d4b56ccc4c4d496d4558cfaf4450 F src/vdbe.h 9720cae673359dc2bdcb106285ecf686b7d3ef24 F src/vdbeInt.h 1ca07f2d7446c90230346aed7fbf990c032460bc F src/vdbeapi.c 2d1e6843af8705a1172e54a418d2a3d5febd1dd7 @@ -423,7 +423,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513 -P a593d5743eab12c0f93a7bc436f0d69dfab0c387 -R 908ed5b0eff5f1c974f45bd56e3c693e +P 70a862702d6dfcfe73bdeef8f0502c6c50e32a3a +R 94e85cc99486398830120433fc02687d U drh -Z cb8e6cfd19833bef1e1d27957c41fff4 +Z c787bd483bb44df57843a66caa4432ea diff --git a/manifest.uuid b/manifest.uuid index 659e024312..a8ebd68569 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -70a862702d6dfcfe73bdeef8f0502c6c50e32a3a \ No newline at end of file +1773eb7badf105b0e23316d4236903049c354c71 \ No newline at end of file diff --git a/src/vdbe.c b/src/vdbe.c index 681a4e2e66..9d2ba8df26 100644 --- a/src/vdbe.c +++ b/src/vdbe.c @@ -43,7 +43,7 @@ ** in this file for details. If in doubt, do not deviate from existing ** commenting and indentation practices when changing or adding code. ** -** $Id: vdbe.c,v 1.582 2007/01/02 18:41:55 drh Exp $ +** $Id: vdbe.c,v 1.583 2007/01/04 01:20:11 drh Exp $ */ #include "sqliteInt.h" #include "os.h" @@ -3082,6 +3082,9 @@ case OP_NotExists: { /* no-push */ pC->rowidIsValid = res==0; pC->nullRow = 0; pC->cacheStatus = CACHE_STALE; + /* res might be uninitialized if rc!=SQLITE_OK. But if rc!=SQLITE_OK + ** processing is about to abort so we really do not care whether or not + ** the following jump is taken. */ if( res!=0 ){ pc = pOp->p2 - 1; pC->rowidIsValid = 0;