]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Bug fix in the new "exists" method of the TCL interface. (CVS 2857)
authordrh <drh@noemail.net>
Wed, 4 Jan 2006 18:13:26 +0000 (18:13 +0000)
committerdrh <drh@noemail.net>
Wed, 4 Jan 2006 18:13:26 +0000 (18:13 +0000)
FossilOrigin-Name: d0e3d466094f7b2f74ed7ebb324e5024ea8faa6f

manifest
manifest.uuid
src/tclsqlite.c

index acf25c1dffa9d95ae6ebda20adcfbc8d66dbdb9e..c5f50a1b50f15d476be66d1d0be4bf0ccc1fb13f 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Update\sdocument\sfor\sCREATE\sINDEX\sIF\sNOT\sEXISTS\sand\sDROP\sINDEX\sIF\sEXISTS\s(CVS\s2856)
-D 2006-01-04T15:58:29
+C Bug\sfix\sin\sthe\snew\s"exists"\smethod\sof\sthe\sTCL\sinterface.\s(CVS\s2857)
+D 2006-01-04T18:13:26
 F Makefile.in e3c6b3a38d734d41574c04f2fc90d18de2b87102
 F Makefile.linux-gcc aee18d8a05546dcf1888bd4547e442008a49a092
 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@@ -71,7 +71,7 @@ F src/shell.c 66b073375efbdee19045e7e0cd38b85f9aff71da
 F src/sqlite.h.in ba3a29daa6a16e054191ccb384a981964e882a1d
 F src/sqliteInt.h a9b187e8621cd3c20c7ef6c0716d77cbed716d4d
 F src/table.c 486dcfce532685b53b5a2b5da8bba0ded6fb2316
-F src/tclsqlite.c 124f822d6c55c5d95420672bf39fe3ba60ae1f76
+F src/tclsqlite.c 0386460a4c017d49d729d44cdcb3fb3ffb2503e0
 F src/test1.c 988dbac66c3ca92d69fbe0283d77e86cd6f73ce8
 F src/test2.c 36390cdfc70c08e5ee0b466d0654a117f398bbff
 F src/test3.c 9742aa146eb750cab81c1d5605286c3a0eb88054
@@ -335,7 +335,7 @@ F www/tclsqlite.tcl ddcf912ea48695603c8ed7efb29f0812ef8d1b49
 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
 F www/version3.tcl a99cf5f6d8bd4d5537584a2b342f0fb9fa601d8b
 F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
-P 551cdd6c309e75687abaeac5381b794cd5e4c10a
-R 28635e7d496f1c4b880f9ed468d83f4a
+P 963ba8b8f3b7b3a8bcd36b224e283cf3b86d4b1d
+R 566b5ccade5f3a282e81daec1c4a88a4
 U drh
-Z 26b7c1a3b995d35a5aa73e0e92185423
+Z f9835c7855643dbb934c6c0a28d2cf11
index 5b277491a6c23e693edd980a7510d3d8b741c248..eeb505b34faa694d0ba23833f0b3ee377aacae76 100644 (file)
@@ -1 +1 @@
-963ba8b8f3b7b3a8bcd36b224e283cf3b86d4b1d
\ No newline at end of file
+d0e3d466094f7b2f74ed7ebb324e5024ea8faa6f
\ No newline at end of file
index 1379ae5fe58e5b5aaaec2932d7dfd9420d1ce6ae..610e9063ec17f1c86453f70626e63b75ce69e98b 100644 (file)
@@ -11,7 +11,7 @@
 *************************************************************************
 ** A TCL Interface to SQLite
 **
-** $Id: tclsqlite.c,v 1.143 2006/01/03 00:33:50 drh Exp $
+** $Id: tclsqlite.c,v 1.144 2006/01/04 18:13:26 drh Exp $
 */
 #ifndef NO_TCL     /* Omit this whole file if TCL is unavailable */
 
@@ -1207,9 +1207,11 @@ static int DbObjCmd(void *cd, Tcl_Interp *interp, int objc,Tcl_Obj *const*objv){
         Tcl_WrongNumArgs(interp, 2, objv, "SQL");
         return TCL_ERROR;
       }
-      pRet = 0;
       if( choice==DB_EXISTS ){
-        Tcl_SetObjResult(interp, Tcl_NewBooleanObj(0));
+        pRet = Tcl_NewBooleanObj(0);
+        Tcl_IncrRefCount(pRet);
+      }else{
+        pRet = 0;
       }
     }
     if( objc==3 ){
@@ -1423,8 +1425,9 @@ static int DbObjCmd(void *cd, Tcl_Interp *interp, int objc,Tcl_Obj *const*objv){
             rc = TCL_BREAK;
             i = nCol;
           }else if( choice==DB_EXISTS ){
-            assert( pRet==0 );
-            Tcl_SetObjResult(interp, Tcl_NewBooleanObj(1));
+            Tcl_DecrRefCount(pRet);
+            pRet = Tcl_NewBooleanObj(1);
+            Tcl_IncrRefCount(pRet);
             rc = TCL_BREAK;
             i = nCol;
           }else{