From: drh <> Date: Thu, 19 Oct 2023 12:36:59 +0000 (+0000) Subject: New assert() statements to help verify correctness of the ORDER BY aggregate X-Git-Tag: version-3.44.0~89 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=266178f3695ac08f6240e1612309b5d17d1f6630;p=thirdparty%2Fsqlite.git New assert() statements to help verify correctness of the ORDER BY aggregate code. FossilOrigin-Name: 8b6fffb552c30f9cbf7102c2e26a7b486c4c9edd9f494d803de7004db3018277 --- diff --git a/manifest b/manifest index 65ace52b28..95084c8ac1 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sthe\ssqlite3ReferencesSrcList()\sroutine\sso\sthat\sit\srecognizes\scolumns\nin\sthe\sORDER\sBY\sclause\sof\san\saggregate.\s\sFixes\sa\sproblem\swith\n[634286828dad873d]\sdiscoverd\sby\sdbsqlfuzz. -D 2023-10-19T12:12:49.878 +C New\sassert()\sstatements\sto\shelp\sverify\scorrectness\sof\sthe\sORDER\sBY\saggregate\ncode. +D 2023-10-19T12:36:59.371 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -718,7 +718,7 @@ F src/printf.c 9da63b9ae1c14789bcae12840f5d800fd9302500cd2d62733fac77f0041b4750 F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c F src/resolve.c 77d07bcec1b3101ce36ebf4aa04dd0340e77cbfc4f31bd1a6e43fcd2db904626 F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97 -F src/select.c 21bee7bc4ac897070b7f570354e9c6d38c6bf9499aeb92f585e675337d45dce0 +F src/select.c 28f136d35ca8b7b2ac87493e8be6685b0f364c8aec814893e47b8e3d5e00a90e F src/shell.c.in cf0a3387c5bb05ca2fe6073fa7df21aaa11e749ca5b3846b80b586a447e728aa F src/sqlite.h.in 60e5698417e674f44be17d5ceeb4c2d395ccedba18d6de05435dec0135d9eff1 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 @@ -2133,8 +2133,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 634286828dad873dba244751441aa729cd37b6ed5899fa5875643d4af03c006c -R 9bc375407ac96c58fb0984b4c1dff2e5 +P 3d26f1aaa4876f21f2c3abf13bbc37933c8f32471153e29019880cc9530cb011 +R e4538bd0a85cafb308a7c103d072a211 U drh -Z c78ae0510d52a6a34f15df4050bb8417 +Z 139757f6f7292db6c0b58e22a2f14879 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 885dddf00f..7fce4dcce7 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -3d26f1aaa4876f21f2c3abf13bbc37933c8f32471153e29019880cc9530cb011 \ No newline at end of file +8b6fffb552c30f9cbf7102c2e26a7b486c4c9edd9f494d803de7004db3018277 \ No newline at end of file diff --git a/src/select.c b/src/select.c index 30a44d0458..128b33ee00 100644 --- a/src/select.c +++ b/src/select.c @@ -417,6 +417,7 @@ void sqlite3SetJoinExpr(Expr *p, int iTable, u32 joinFlag){ p->w.iJoin = iTable; if( p->op==TK_FUNCTION ){ assert( ExprUseXList(p) ); + assert( p->pLeft==0 ); if( p->x.pList ){ int i; for(i=0; ix.pList->nExpr; i++){ @@ -454,6 +455,7 @@ static void unsetJoinExpr(Expr *p, int iTable, int nullable){ } if( p->op==TK_FUNCTION ){ assert( ExprUseXList(p) ); + assert( p->pLeft==0 ); if( p->x.pList ){ int i; for(i=0; ix.pList->nExpr; i++){