aboutsummaryrefslogtreecommitdiff
path: root/src/test_tclvar.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2009-11-23 21:23:45 +0000
committerdrh <drh@noemail.net>2009-11-23 21:23:45 +0000
commita62bb8d4d71f39807fc74f1a06ec409512d01feb (patch)
treea1a265503e52c21d5c581d97d592b16b8c5e94b6 /src/test_tclvar.c
parent1ac399e8eb9a0bb645661b43bd9462dcf7b16406 (diff)
downloadsqlite-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.c9
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 );