diff options
author | drh <> | 2022-04-17 22:58:23 +0000 |
---|---|---|
committer | drh <> | 2022-04-17 22:58:23 +0000 |
commit | f68621fe83984d264c690fce98fb3f2e5dd7f99f (patch) | |
tree | bc74e4206147283f6e4ac6127c126bbace6a8147 /src | |
parent | 2bd9f44a1867c7d91bebb756a998fe1dda09d8f4 (diff) | |
download | sqlite-f68621fe83984d264c690fce98fb3f2e5dd7f99f.tar.gz sqlite-f68621fe83984d264c690fce98fb3f2e5dd7f99f.zip |
Deal with OP_Return bypass in the RIGHT JOIN subroutine by adding extra
OP_Returns where needed.
FossilOrigin-Name: 71abe5641f599f27d1f0c800f6182e1168909f8aa99389b835b07d4b5f5483eb
Diffstat (limited to 'src')
-rw-r--r-- | src/where.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/where.c b/src/where.c index 8755ccd2c..8526f7c5a 100644 --- a/src/where.c +++ b/src/where.c @@ -6121,6 +6121,10 @@ void sqlite3WhereEnd(WhereInfo *pWInfo){ } } sqlite3VdbeResolveLabel(v, pLevel->addrBrk); + if( pLevel->pRJ ){ + sqlite3VdbeAddOp3(v, OP_Return, pLevel->pRJ->regReturn, 0, 1); + VdbeCoverage(v); + } if( pLevel->addrSkip ){ sqlite3VdbeGoto(v, pLevel->addrSkip); VdbeComment((v, "next skip-scan on %s", pLoop->u.btree.pIndex->zName)); |