mirror of
https://github.com/sqlite/sqlite.git
synced 2025-11-16 23:02:26 +03:00
Make sure the result of sqlite3VdbeGetOp() is not used as an array following
an OOM error, since after (6691) it might be a single-entry dummy opcode. (CVS 6724) FossilOrigin-Name: 127b13981960a9690de09e8f9d0b38a4bd76015f
This commit is contained in:
14
manifest
14
manifest
@@ -1,5 +1,5 @@
|
|||||||
C When\sbuilding\sin\sdebug\smode\swith\sgcc,\sforce\sthe\snullMem\svariable\sin\sfunction\scolumnMem()\sto\sbe\saligned\sto\san\s8-byte\sboundary.\sOtherwise\san\sassert()\sstatement\smay\sfail.\s(CVS\s6723)
|
C Make\ssure\sthe\sresult\sof\ssqlite3VdbeGetOp()\sis\snot\sused\sas\san\sarray\sfollowing\nan\sOOM\serror,\ssince\safter\s(6691)\sit\smight\sbe\sa\ssingle-entry\sdummy\sopcode.\s(CVS\s6724)
|
||||||
D 2009-06-06T14:13:27
|
D 2009-06-06T15:17:28
|
||||||
F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
|
F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
|
||||||
F Makefile.in 8b8fb7823264331210cddf103831816c286ba446
|
F Makefile.in 8b8fb7823264331210cddf103831816c286ba446
|
||||||
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
|
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
|
||||||
@@ -212,7 +212,7 @@ F src/vdbeblob.c c25d7e7bc6d5917feeb17270bd275fa771f26e5c
|
|||||||
F src/vdbemem.c 05183d46094aa99b8f8350e5761b9369dbef35a8
|
F src/vdbemem.c 05183d46094aa99b8f8350e5761b9369dbef35a8
|
||||||
F src/vtab.c e2f4c92df7d06330b151448718c4724742ff444b
|
F src/vtab.c e2f4c92df7d06330b151448718c4724742ff444b
|
||||||
F src/walker.c ec4b9742a4077ef80346e2f9aaf0f44c2d95087a
|
F src/walker.c ec4b9742a4077ef80346e2f9aaf0f44c2d95087a
|
||||||
F src/where.c 706e9f2fbb422f58bf6c6542b62eed2055794942
|
F src/where.c c6dda6e349e83de5da471704841791ecacaf87ca
|
||||||
F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2
|
F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2
|
||||||
F test/alias.test 4529fbc152f190268a15f9384a5651bbbabc9d87
|
F test/alias.test 4529fbc152f190268a15f9384a5651bbbabc9d87
|
||||||
F test/all.test 14165b3e32715b700b5f0cbf8f6e3833dda0be45
|
F test/all.test 14165b3e32715b700b5f0cbf8f6e3833dda0be45
|
||||||
@@ -733,7 +733,7 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
|
|||||||
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
|
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
|
||||||
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
|
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
|
||||||
F tool/vdbe-compress.tcl 672f81d693a03f80f5ae60bfefacd8a349e76746
|
F tool/vdbe-compress.tcl 672f81d693a03f80f5ae60bfefacd8a349e76746
|
||||||
P 3ae4880bee3a0312c61cdd36f4fa50286cc2ef48
|
P 3fd6c72da599347af70897b30b86a4ba641d4cd9
|
||||||
R 7fafa9b9c2ade168b25ec9e70190e435
|
R cb43d9b720bcd9297992edbfe1e179da
|
||||||
U danielk1977
|
U drh
|
||||||
Z 310a5ca4b45740577b9f82dfb2f7878d
|
Z c27bf9ffa6ccdcf0d37dcb5ecf60c7c6
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
3fd6c72da599347af70897b30b86a4ba641d4cd9
|
127b13981960a9690de09e8f9d0b38a4bd76015f
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
** so is applicable. Because this module is responsible for selecting
|
** so is applicable. Because this module is responsible for selecting
|
||||||
** indices, you might also think of this module as the "query optimizer".
|
** indices, you might also think of this module as the "query optimizer".
|
||||||
**
|
**
|
||||||
** $Id: where.c,v 1.400 2009/06/03 01:24:54 drh Exp $
|
** $Id: where.c,v 1.401 2009/06/06 15:17:28 drh Exp $
|
||||||
*/
|
*/
|
||||||
#include "sqliteInt.h"
|
#include "sqliteInt.h"
|
||||||
|
|
||||||
@@ -3551,7 +3551,7 @@ void sqlite3WhereEnd(WhereInfo *pWInfo){
|
|||||||
** that reference the table and converts them into opcodes that
|
** that reference the table and converts them into opcodes that
|
||||||
** reference the index.
|
** reference the index.
|
||||||
*/
|
*/
|
||||||
if( (pLevel->plan.wsFlags & WHERE_INDEXED)!=0 ){
|
if( (pLevel->plan.wsFlags & WHERE_INDEXED)!=0 && !db->mallocFailed){
|
||||||
int k, j, last;
|
int k, j, last;
|
||||||
VdbeOp *pOp;
|
VdbeOp *pOp;
|
||||||
Index *pIdx = pLevel->plan.u.pIdx;
|
Index *pIdx = pLevel->plan.u.pIdx;
|
||||||
|
|||||||
Reference in New Issue
Block a user