aboutsummaryrefslogtreecommitdiff
path: root/src/expr.c
diff options
context:
space:
mode:
authordan <dan@noemail.net>2019-08-15 13:53:22 +0000
committerdan <dan@noemail.net>2019-08-15 13:53:22 +0000
commita3fcc000cb7bd5b12816512834e6484c68658576 (patch)
tree4120e7f003a337ceab43adeaf2800683143224af /src/expr.c
parentd4da4936cdfaf5647d9daf0b861b2e63969a810d (diff)
downloadsqlite-a3fcc000cb7bd5b12816512834e6484c68658576.tar.gz
sqlite-a3fcc000cb7bd5b12816512834e6484c68658576.zip
Ensure that SQLite does not attempt to process incompatible window functions in a single scan. Fix for [256741a1].
FossilOrigin-Name: 4f5b2d938194fab7627486e2ced633def2c90d9d3328e3700612feb9dbfa3d9a
Diffstat (limited to 'src/expr.c')
-rw-r--r--src/expr.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/src/expr.c b/src/expr.c
index e00b319ed..8f02ae569 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -1325,12 +1325,7 @@ static int gatherSelectWindowsCallback(Walker *pWalker, Expr *pExpr){
assert( pWin );
assert( IsWindowFunc(pExpr) );
assert( pWin->ppThis==0 );
- if( pSelect->pWin ){
- pSelect->pWin->ppThis = &pWin->pNextWin;
- }
- pWin->pNextWin = pSelect->pWin;
- pWin->ppThis = &pSelect->pWin;
- pSelect->pWin = pWin;
+ sqlite3WindowLink(pSelect, pWin);
}
return WRC_Continue;
}