From: drh Date: Tue, 17 Apr 2018 18:50:40 +0000 (+0000) Subject: TK_REGISTER expressions nodes are probably not constant. Make sure X-Git-Tag: version-3.24.0~146^2~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6e341b93471c790e043b47fe76c056da678a5527;p=thirdparty%2Fsqlite.git TK_REGISTER expressions nodes are probably not constant. Make sure sqlite3ExprIsConstant() knows this. FossilOrigin-Name: f3d91cad929cfbee8f621425f55b5f12e79567362cf8769a786adb3e1bbef214 --- diff --git a/manifest b/manifest index 6fb3f97b1d..251aa5cbab 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Simplification\sto\sthe\supsert\slogic. -D 2018-04-17T18:18:05.768 +C TK_REGISTER\sexpressions\snodes\sare\sprobably\snot\sconstant.\s\sMake\ssure\nsqlite3ExprIsConstant()\sknows\sthis. +D 2018-04-17T18:50:40.806 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F Makefile.in 5ce9343cba9c189046f1afe6d2bcc1f68079439febc05267b98aec6ecc752439 @@ -443,7 +443,7 @@ F src/date.c ebe1dc7c8a347117bb02570f1a931c62dd78f4a2b1b516f4837d45b7d6426957 F src/dbpage.c 8db4c97f630e7d83f884ea75caf1ffd0988c160e9d530194d93721c80821e0f6 F src/dbstat.c edabb82611143727511a45ca0859b8cd037851ebe756ae3db289859dd18b6f91 F src/delete.c 20c8788451dc737a967c87ea53ad43544d617f5b57d32ccce8bd52a0daf9e89b -F src/expr.c fc607dd6338ac73c7fdc962734575d7136966cd9dbb69f8c75104d3d272bea96 +F src/expr.c 1633ff93c1261cb7f55e86585790920f95740249cf153fe3b7cf9dc737def6a1 F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007 F src/fkey.c d617daf66b5515e2b42c1405b2b4984c30ca50fb705ab164271a9bf66c69e331 F src/func.c 94f42cba2cc1c34aeaa441022ba0170ec3fec4bba54db4e0ded085c6dc0fdc51 @@ -1722,7 +1722,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 27cd3b2fb2ad0cf2b36741bd1057cb7973954d40456e9db158261a38b049d2b5 -R 837c4599d1e54bae4359625ba7dd9074 +P f36d07a5b24cc48e3daa8b18dd34c50d9025c6c0ba019926610538b54f7b66ec +R 2592653ac9a36d5b1dfe12eeeda8279d U drh -Z 92d6b1e9c0f6d90ac70b51eff037a9bb +Z a21db6874b54aa7e41558b500442b67a diff --git a/manifest.uuid b/manifest.uuid index f398dff8b8..ef738e3aa4 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -f36d07a5b24cc48e3daa8b18dd34c50d9025c6c0ba019926610538b54f7b66ec \ No newline at end of file +f3d91cad929cfbee8f621425f55b5f12e79567362cf8769a786adb3e1bbef214 \ No newline at end of file diff --git a/src/expr.c b/src/expr.c index 63b79c2f06..76299ffac5 100644 --- a/src/expr.c +++ b/src/expr.c @@ -1825,6 +1825,7 @@ static int exprNodeIsConstant(Walker *pWalker, Expr *pExpr){ } /* Fall through */ case TK_IF_NULL_ROW: + case TK_REGISTER: testcase( pExpr->op==TK_IF_NULL_ROW ); pWalker->eCode = 0; return WRC_Abort; @@ -1842,8 +1843,8 @@ static int exprNodeIsConstant(Walker *pWalker, Expr *pExpr){ } /* Fall through */ default: - testcase( pExpr->op==TK_SELECT ); /* sqlite3SelectWalkFail will disallow */ - testcase( pExpr->op==TK_EXISTS ); /* sqlite3SelectWalkFail will disallow */ + testcase( pExpr->op==TK_SELECT ); /* sqlite3SelectWalkFail() disallows */ + testcase( pExpr->op==TK_EXISTS ); /* sqlite3SelectWalkFail() disallows */ return WRC_Continue; } }