From: drh Date: Mon, 29 Dec 2008 23:45:07 +0000 (+0000) Subject: Always make sure WhereClause objects are initialized to zero when they X-Git-Tag: version-3.6.10~111 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=954701a0548298577d7f43024be7e5b285c9f494;p=thirdparty%2Fsqlite.git Always make sure WhereClause objects are initialized to zero when they are first allocated. (CVS 6073) FossilOrigin-Name: 7d0ae55d6b2d263382f034eb89bbc368fab6a9bc --- diff --git a/manifest b/manifest index 7de5f820ce..b89a99de6f 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Add\stest\sfile\swhere8.test.\s(CVS\s6072) -D 2008-12-29T18:33:33 +C Always\smake\ssure\sWhereClause\sobjects\sare\sinitialized\sto\szero\swhen\sthey\nare\sfirst\sallocated.\s(CVS\s6073) +D 2008-12-29T23:45:07 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0 F Makefile.in 77635d0909c2067cee03889a1e04ce910d8fb809 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654 @@ -207,7 +207,7 @@ F src/vdbeblob.c b0dcebfafedcf9c0addc7901ad98f6f986c08935 F src/vdbemem.c f9c859ac17e2e05a0f249868ce4f191f69edd31d F src/vtab.c e39e011d7443a8d574b1b9cde207a35522e6df43 F src/walker.c 488c2660e13224ff70c0c82761118efb547f8f0d -F src/where.c 90b1fa8ad8b27b3e80f380bb745d38f500e37566 +F src/where.c d0f422dd1a72a59484af77433412af53da63c78a F tclinstaller.tcl 4356d9d94d2b5ed5e68f9f0c80c4df3048dd7617 F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2 F test/alias.test 597662c5d777a122f9a3df0047ea5c5bd383a911 @@ -687,7 +687,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81 F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e -P 0b972f14f00340cbd4e310dea6d1a4f1c05f5628 -R 618248255cc0db65a1e451c19324ecc5 -U danielk1977 -Z ebf06715c02d5bd51f7609b7ab009886 +P bff460ec2c3e250de034a6b34312b897bb2f3749 +R afbea31e7a0f278c532ea02b4a243218 +U drh +Z 376ed48aa5f636301a1d1f6a2a793394 diff --git a/manifest.uuid b/manifest.uuid index 240890e43b..6c809a260b 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -bff460ec2c3e250de034a6b34312b897bb2f3749 \ No newline at end of file +7d0ae55d6b2d263382f034eb89bbc368fab6a9bc \ No newline at end of file diff --git a/src/where.c b/src/where.c index d6dc6710f7..769b70ac41 100644 --- a/src/where.c +++ b/src/where.c @@ -16,7 +16,7 @@ ** so is applicable. Because this module is responsible for selecting ** indices, you might also think of this module as the "query optimizer". ** -** $Id: where.c,v 1.349 2008/12/29 18:33:33 danielk1977 Exp $ +** $Id: where.c,v 1.350 2008/12/29 23:45:07 drh Exp $ */ #include "sqliteInt.h" @@ -819,7 +819,7 @@ static void exprAnalyzeOrTerm( */ assert( (pTerm->wtFlags & (TERM_DYNAMIC|TERM_ORINFO|TERM_ANDINFO))==0 ); assert( pExpr->op==TK_OR ); - pTerm->u.pOrInfo = pOrInfo = sqlite3DbMallocRaw(db, sizeof(*pOrInfo)); + pTerm->u.pOrInfo = pOrInfo = sqlite3DbMallocZero(db, sizeof(*pOrInfo)); if( pOrInfo==0 ) return; pTerm->wtFlags |= TERM_ORINFO; pOrWc = &pOrInfo->wc;