From: drh Date: Tue, 12 Aug 2014 01:23:07 +0000 (+0000) Subject: Fix an assert() statement in the SELECT code generator that was X-Git-Tag: version-3.8.6~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=fcf2a7757e9c95b62783dd231c814723b1e9f73c;p=thirdparty%2Fsqlite.git Fix an assert() statement in the SELECT code generator that was incorrect following an OOM error. FossilOrigin-Name: a179e41e40dba4c19a488985f77777acd27b689d --- diff --git a/manifest b/manifest index 49af3799cd..7a1fd203a6 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Modify\sGetVersionEx\sWin32\sVFS\sfix\sfor\suse\swith\sthe\stest\ssuite. -D 2014-08-11T17:51:23.396 +C Fix\san\sassert()\sstatement\sin\sthe\sSELECT\scode\sgenerator\sthat\swas\nincorrect\sfollowing\san\sOOM\serror. +D 2014-08-12T01:23:07.241 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 5eb79e334a5de69c87740edd56af6527dd219308 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -222,7 +222,7 @@ F src/printf.c af06f66927919730f03479fed6ae9854f73419f4 F src/random.c d10c1f85b6709ca97278428fd5db5bbb9c74eece F src/resolve.c 0ea356d32a5e884add23d1b9b4e8736681dd5697 F src/rowset.c a9c9aae3234b44a6d7c6f5a3cadf90dce1e627be -F src/select.c 1529c49075464c5a95fde77314073612b1b8d595 +F src/select.c ea48e891406ccdf748f3eb02893e056d134a0fea F src/shell.c 75bb7bd2c80bb44861598f322a417c4bafe98fd7 F src/sqlite.h.in ed9d35990c61f0388ca6405706455c4095310553 F src/sqlite3.rc 11094cc6a157a028b301a9f06b3d03089ea37c3e @@ -1185,7 +1185,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P 87ef9e2f293afd89901fed6be45b0f0052df6846 -R e0e522e37a27751d028bda9decd5982c -U mistachkin -Z eaad92a848e90bf0dd1d823726bec5b2 +P fd2221768b45d9006bbb2919a4977cf2791826d6 +R b6cc4377208f7ed66435f59cee05c5c1 +U drh +Z b6d2068c4cafb891d688b19239264b19 diff --git a/manifest.uuid b/manifest.uuid index 903be479d6..c78b961e4d 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -fd2221768b45d9006bbb2919a4977cf2791826d6 \ No newline at end of file +a179e41e40dba4c19a488985f77777acd27b689d \ No newline at end of file diff --git a/src/select.c b/src/select.c index f5456c893d..932874d8fe 100644 --- a/src/select.c +++ b/src/select.c @@ -706,7 +706,7 @@ static void selectInnerLoop( sqlite3VdbeChangeP4(v, -1, (const char *)pColl, P4_COLLSEQ); sqlite3VdbeChangeP5(v, SQLITE_NULLEQ); } - assert( sqlite3VdbeCurrentAddr(v)==iJump ); + assert( sqlite3VdbeCurrentAddr(v)==iJump || pParse->db->mallocFailed ); sqlite3VdbeAddOp3(v, OP_Copy, regResult, regPrev, nResultCol-1); break; }