diff options
author | drh <drh@noemail.net> | 2009-11-23 21:23:45 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2009-11-23 21:23:45 +0000 |
commit | a62bb8d4d71f39807fc74f1a06ec409512d01feb (patch) | |
tree | a1a265503e52c21d5c581d97d592b16b8c5e94b6 /src/test_tclvar.c | |
parent | 1ac399e8eb9a0bb645661b43bd9462dcf7b16406 (diff) | |
download | sqlite-a62bb8d4d71f39807fc74f1a06ec409512d01feb.tar.gz sqlite-a62bb8d4d71f39807fc74f1a06ec409512d01feb.zip |
Make sure registers computed for the VFilter opcode are marked invalid
after the VFilter opcode finishes. Ticket [16fbf14cb2].
FossilOrigin-Name: 83dc7d38c2695d1b2a7d4866a4df9be9e41d1abe
Diffstat (limited to 'src/test_tclvar.c')
-rw-r--r-- | src/test_tclvar.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/test_tclvar.c b/src/test_tclvar.c index 7fd3b3bac..1219190c0 100644 --- a/src/test_tclvar.c +++ b/src/test_tclvar.c @@ -165,6 +165,15 @@ static int tclvarFilter( Tcl_ListObjAppendElement(0, p, pArg); } Tcl_EvalObjEx(interp, p, TCL_EVAL_GLOBAL); + if( pCur->pList1 ){ + Tcl_DecrRefCount(pCur->pList1); + } + if( pCur->pList2 ){ + Tcl_DecrRefCount(pCur->pList2); + pCur->pList2 = 0; + } + pCur->i1 = 0; + pCur->i2 = 0; pCur->pList1 = Tcl_GetObjResult(interp); Tcl_IncrRefCount(pCur->pList1); assert( pCur->i1==0 && pCur->i2==0 && pCur->pList2==0 ); |