diff options
author | drh <drh@noemail.net> | 2019-12-19 20:37:32 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2019-12-19 20:37:32 +0000 |
commit | 8654186b0236d556aa85528c2573ee0b6ab71be3 (patch) | |
tree | c9a3040f7fa21c2449f70eeeab80dc1d638bc428 /src/expr.c | |
parent | 34ab941e5bae10894b3c0653248c6636edc5e9f8 (diff) | |
download | sqlite-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.c | 1 |
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{ |