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:
@@ -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: {
|
||||
|
||||
Reference in New Issue
Block a user