Index: third_party/sqlite/src/src/test_tclvar.c |
diff --git a/third_party/sqlite/src/src/test_tclvar.c b/third_party/sqlite/src/src/test_tclvar.c |
index acabd21b0f46b47af5800fcda4c3c116e84b3e37..1219190c0300fd5ec7a3c58408f33843d20eee15 100644 |
--- a/third_party/sqlite/src/src/test_tclvar.c |
+++ b/third_party/sqlite/src/src/test_tclvar.c |
@@ -15,8 +15,6 @@ |
** |
** The emphasis of this file is a virtual table that provides |
** access to TCL variables. |
-** |
-** $Id: test_tclvar.c,v 1.17 2008/08/12 14:48:41 danielk1977 Exp $ |
*/ |
#include "sqliteInt.h" |
#include "tcl.h" |
@@ -167,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 ); |