aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordan <dan@noemail.net>2020-01-29 15:03:01 +0000
committerdan <dan@noemail.net>2020-01-29 15:03:01 +0000
commitd03f77ae4650abd99699656e959c979e2e46391f (patch)
treed99119f46ff45b8e61e8e802103a04ee1cd72ad6 /src
parent759e9cc0647c9c802572eef4835dfb967fdbe302 (diff)
downloadsqlite-d03f77ae4650abd99699656e959c979e2e46391f.tar.gz
sqlite-d03f77ae4650abd99699656e959c979e2e46391f.zip
Fix a problem with the processing of IN(...) constraints handled by virtual table implementations that do not set the "omit" flag when the virtual table column contains at least one NULL value.
FossilOrigin-Name: dcb4838757ca49cf149a6e883b3eb0ac8a075147387a078280dfabe39b1a3e8d
Diffstat (limited to 'src')
-rw-r--r--src/wherecode.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/wherecode.c b/src/wherecode.c
index 0014a695d..e2e10f761 100644
--- a/src/wherecode.c
+++ b/src/wherecode.c
@@ -1432,7 +1432,9 @@ Bitmask sqlite3WhereCodeOneLoopStart(
pCompare->pRight = pRight = sqlite3Expr(db, TK_REGISTER, 0);
if( pRight ){
pRight->iTable = iReg+j+2;
- sqlite3ExprIfFalse(pParse, pCompare, pLevel->addrCont, 0);
+ sqlite3ExprIfFalse(
+ pParse, pCompare, pLevel->addrCont, SQLITE_JUMPIFNULL
+ );
}
pCompare->pLeft = 0;
sqlite3ExprDelete(db, pCompare);