aboutsummaryrefslogtreecommitdiff
path: root/src/expr.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2019-12-19 20:37:32 +0000
committerdrh <drh@noemail.net>2019-12-19 20:37:32 +0000
commit8654186b0236d556aa85528c2573ee0b6ab71be3 (patch)
treec9a3040f7fa21c2449f70eeeab80dc1d638bc428 /src/expr.c
parent34ab941e5bae10894b3c0653248c6636edc5e9f8 (diff)
downloadsqlite-8654186b0236d556aa85528c2573ee0b6ab71be3.tar.gz
sqlite-8654186b0236d556aa85528c2573ee0b6ab71be3.zip
When an error occurs while rewriting the parser tree for window functions
in the sqlite3WindowRewrite() routine, make sure that pParse->nErr is set, and make sure that this shuts down any subsequent code generation that might depend on the transformations that were implemented. This fixes a problem discovered by the Yongheng and Rui fuzzer. FossilOrigin-Name: e2bddcd4c55ba3cbe0130332679ff4b048630d0ced9a8899982edb5a3569ba7f
Diffstat (limited to 'src/expr.c')
-rw-r--r--src/expr.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/expr.c b/src/expr.c
index 2aef57567..6ea8ff73f 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -376,6 +376,7 @@ static int codeCompare(
int addr;
CollSeq *p4;
+ if( pParse->nErr ) return 0;
if( isCommuted ){
p4 = sqlite3BinaryCompareCollSeq(pParse, pRight, pLeft);
}else{