1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-12 13:01:09 +03:00

Prevent deep recursions on nested COLLATE operators.

FossilOrigin-Name: 6e098ee415f1a530e17a942c9ba51d67c25a3ebff6b97377b7858d0b10bcec92
This commit is contained in:
drh
2018-04-28 04:16:43 +00:00
parent 6bfd973ce6
commit 1efa8023a1
3 changed files with 10 additions and 8 deletions

View File

@@ -3551,6 +3551,7 @@ int sqlite3ExprCodeTarget(Parse *pParse, Expr *pExpr, int target){
return 0;
}
expr_code_doover:
if( pExpr==0 ){
op = TK_NULL;
}else{
@@ -4011,7 +4012,8 @@ int sqlite3ExprCodeTarget(Parse *pParse, Expr *pExpr, int target){
case TK_SPAN:
case TK_COLLATE:
case TK_UPLUS: {
return sqlite3ExprCodeTarget(pParse, pExpr->pLeft, target);
pExpr = pExpr->pLeft;
goto expr_code_doover;
}
case TK_TRIGGER: {