From: drh Date: Thu, 2 Feb 2012 03:11:40 +0000 (+0000) Subject: Fix a possible segfault after an OOM fault. This has been in the code for ages X-Git-Tag: version-3.7.11~67 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a3cc3c961625f1499afc6178d9fdc5c1baadea23;p=thirdparty%2Fsqlite.git Fix a possible segfault after an OOM fault. This has been in the code for ages but only expressed itself following the previous check-in. FossilOrigin-Name: a3553b8a035b70e76a5a325b9e9f379f84de3955 --- diff --git a/manifest b/manifest index 55ab179622..e1bfc75fb2 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Remove\sthe\snAlloc\sfield\sfrom\sthe\sExprList\sobject. -D 2012-02-02T01:58:08.811 +C Fix\sa\spossible\ssegfault\safter\san\sOOM\sfault.\s\sThis\shas\sbeen\sin\sthe\scode\sfor\sages\nbut\sonly\sexpressed\sitself\sfollowing\sthe\sprevious\scheck-in. +D 2012-02-02T03:11:40.324 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 3f79a373e57c3b92dabf76f40b065e719d31ac34 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -180,7 +180,7 @@ F src/printf.c 7ffb4ebb8b341f67e049695ba031da717b3d2699 F src/random.c cd4a67b3953b88019f8cd4ccd81394a8ddfaba50 F src/resolve.c 3d3e80a98f203ac6b9329e9621e29eda85ddfd40 F src/rowset.c 69afa95a97c524ba6faf3805e717b5b7ae85a697 -F src/select.c 1ad267692ab09afe05092eddcb5aba96b796afe1 +F src/select.c b6eec9d11ec5df0d1fd11e8a0eed0fc2d2d96b25 F src/shell.c 60d147c2411dd2d79a5151cfb9a068de87c7babe F src/sqlite.h.in 371c30e4be94b9b0ea6400ed66663fcf8e891eb4 F src/sqlite3ext.h 6904f4aadf976f95241311fbffb00823075d9477 @@ -988,7 +988,7 @@ F tool/tostr.awk e75472c2f98dd76e06b8c9c1367f4ab07e122d06 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh 9f406d66e750e8ac031c63a9ef3248aaa347ef2a F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 -P a38d57a4e5d79a0baefdf776e0e2d61423681a4f -R 77e04796737c9c6ab169ded8e9e97e0e +P 5963de303a9106b446a9423aa838bfdf6bc1e7f3 +R 850cb01b34139b6ff5ae22e6f4202f6f U drh -Z 60619f3cb0418eda9860a313b8f07415 +Z ef5893d9871699934600cb710a85a051 diff --git a/manifest.uuid b/manifest.uuid index 2ff05264a2..56ca8ab76d 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -5963de303a9106b446a9423aa838bfdf6bc1e7f3 \ No newline at end of file +a3553b8a035b70e76a5a325b9e9f379f84de3955 \ No newline at end of file diff --git a/src/select.c b/src/select.c index 2eb4f07137..6fcb37f70d 100644 --- a/src/select.c +++ b/src/select.c @@ -2233,7 +2233,7 @@ static int multiSelectOrderBy( pNew->flags |= EP_IntValue; pNew->u.iValue = i; pOrderBy = sqlite3ExprListAppend(pParse, pOrderBy, pNew); - pOrderBy->a[nOrderBy++].iOrderByCol = (u16)i; + if( pOrderBy ) pOrderBy->a[nOrderBy++].iOrderByCol = (u16)i; } } }