diff options
author | drh <> | 2022-04-23 18:46:03 +0000 |
---|---|---|
committer | drh <> | 2022-04-23 18:46:03 +0000 |
commit | 30d2aab5fda21909d381a532f0ffcd6154cf3d51 (patch) | |
tree | 9aa90bbbc967b79163429ec9d05cd23343e0022d /src/where.c | |
parent | d6bb6000eff360f76d736d13331816354d880c5f (diff) | |
parent | 6c7e89b48a3723ca6038a21170354fe3ad690b47 (diff) | |
download | sqlite-30d2aab5fda21909d381a532f0ffcd6154cf3d51.tar.gz sqlite-30d2aab5fda21909d381a532f0ffcd6154cf3d51.zip |
In debug builds, add extra code to verify that there are no jumps that try to
escape from the right-join body subroutine.
FossilOrigin-Name: 45fe919266ba1843f3eeeb511ab43126069d4976c9fc64e57e0390c21f110b6e
Diffstat (limited to 'src/where.c')
-rw-r--r-- | src/where.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/where.c b/src/where.c index 8526f7c5a..a72441932 100644 --- a/src/where.c +++ b/src/where.c @@ -6024,6 +6024,7 @@ void sqlite3WhereEnd(WhereInfo *pWInfo){ WhereRightJoin *pRJ = pLevel->pRJ; sqlite3VdbeResolveLabel(v, pLevel->addrCont); pLevel->addrCont = 0; + pRJ->endSubrtn = sqlite3VdbeCurrentAddr(v); sqlite3VdbeAddOp3(v, OP_Return, pRJ->regReturn, pRJ->addrSubrtn, 1); VdbeCoverage(v); assert( pParse->withinRJSubrtn>0 ); |