]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Bug fix in the IF NOT EXISTS logic. (CVS 2858)
authordrh <drh@noemail.net>
Wed, 4 Jan 2006 21:40:06 +0000 (21:40 +0000)
committerdrh <drh@noemail.net>
Wed, 4 Jan 2006 21:40:06 +0000 (21:40 +0000)
FossilOrigin-Name: cb9095ac52e76926f274678ef55ebb9df4b9fcac

manifest
manifest.uuid
src/build.c
test/table.test

index c5f50a1b50f15d476be66d1d0be4bf0ccc1fb13f..b9e3b45a17dc7b36607c14257bccff6e5e680c91 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Bug\sfix\sin\sthe\snew\s"exists"\smethod\sof\sthe\sTCL\sinterface.\s(CVS\s2857)
-D 2006-01-04T18:13:26
+C Bug\sfix\sin\sthe\sIF\sNOT\sEXISTS\slogic.\s(CVS\s2858)
+D 2006-01-04T21:40:07
 F Makefile.in e3c6b3a38d734d41574c04f2fc90d18de2b87102
 F Makefile.linux-gcc aee18d8a05546dcf1888bd4547e442008a49a092
 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@@ -36,7 +36,7 @@ F src/attach.c 07822dbd2dcf6de548aba6cb24142aec800fa3b6
 F src/auth.c 31e2304bef67f44d635655f44234387ea7d21454
 F src/btree.c ec89192ceeae9343c5d8f2564b8c9b8c958e6bfc
 F src/btree.h d6481f9253f0b5fa40b35da4b93a54d0f9c5f9f2
-F src/build.c 6bf007d0da0527820329d5695c90e1042bef1e58
+F src/build.c 7bf6f9ba5b2ea7c654986085211fcd9794cfb5c8
 F src/callback.c 62066afd516f220575e81b1a1239ab92a2eae252
 F src/complete.c df1681cef40dec33a286006981845f87b194e7a4
 F src/date.c bb079317bff6a2b78aba5c0d2ddae5f6f03acfb7
@@ -226,7 +226,7 @@ F test/sort.test 0e4456e729e5a92a625907c63dcdedfbe72c5dc5
 F test/subquery.test e6de53332c0301b3cfa34edc3f3cd5fa1e859efd
 F test/subselect.test 2d13fb7f450db3595adcdd24079a0dd1d2d6abc2
 F test/sync.test 6e8b885cec5ccba2090e92c90f747a7142f53c88
-F test/table.test 149b76a28bbe2a1cd799232e4ae5133881e1902a
+F test/table.test 6dc0dfa44dd429520e0e5a0c5e55025f730e9403
 F test/tableapi.test 6a66d58b37d46dc0f2b3c7d4bd2617d209399bd1
 F test/tclsqlite.test 19578d32a7692311918caf0ae3521d19525bcb62
 F test/temptable.test 7927261befdbc7b0a7ffebb85ecc70a74fa7b15b
@@ -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 963ba8b8f3b7b3a8bcd36b224e283cf3b86d4b1d
-R 566b5ccade5f3a282e81daec1c4a88a4
+P d0e3d466094f7b2f74ed7ebb324e5024ea8faa6f
+R a1f52f5cef7ff73c69c22ea9cb8c2ecf
 U drh
-Z f9835c7855643dbb934c6c0a28d2cf11
+Z 0221548bd916e287249dc78e673eb685
index eeb505b34faa694d0ba23833f0b3ee377aacae76..f70b75948be0839b5ed0b764ef93714a8121c1f8 100644 (file)
@@ -1 +1 @@
-d0e3d466094f7b2f74ed7ebb324e5024ea8faa6f
\ No newline at end of file
+cb9095ac52e76926f274678ef55ebb9df4b9fcac
\ No newline at end of file
index 48cebe427245258d9daebf2b07083e91fe14df25..8907fdf2f99b2b8b4b44a73b43eb5f48449a2431 100644 (file)
@@ -22,7 +22,7 @@
 **     COMMIT
 **     ROLLBACK
 **
-** $Id: build.c,v 1.365 2006/01/04 15:54:36 drh Exp $
+** $Id: build.c,v 1.366 2006/01/04 21:40:07 drh Exp $
 */
 #include "sqliteInt.h"
 #include <ctype.h>
@@ -2161,6 +2161,7 @@ void sqlite3CreateIndex(
   }else{
     assert( pName==0 );
     pTab =  pParse->pNewTable;
+    if( !pTab ) goto exit_create_index;
     iDb = pTab->iDb;
   }
   pDb = &db->aDb[iDb];
index 10839ab5836a0e897936c5808f3fecef435d27f1..a4e9858fe27538ff7b6fd439f88a08f7cd13cf49 100644 (file)
@@ -11,7 +11,7 @@
 # This file implements regression tests for SQLite library.  The
 # focus of this file is testing the CREATE TABLE statement.
 #
-# $Id: table.test,v 1.43 2005/12/29 23:33:54 drh Exp $
+# $Id: table.test,v 1.44 2006/01/04 21:40:07 drh Exp $
 
 set testdir [file dirname $argv0]
 source $testdir/tester.tcl
@@ -106,6 +106,9 @@ do_test table-2.1d {
   catchsql {CREATE TABLE IF NOT EXISTS test2(x,y)}
 } {0 {}}
 do_test table-2.1e {
+  catchsql {CREATE TABLE IF NOT EXISTS test2(x UNIQUE, y TEXT PRIMARY KEY)}
+} {0 {}}
+do_test table-2.1f {
   execsql {DROP TABLE test2; SELECT name FROM sqlite_master WHERE type!='meta'}
 } {}