]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
:-) (CVS 35)
authordrh <drh@noemail.net>
Fri, 2 Jun 2000 01:36:16 +0000 (01:36 +0000)
committerdrh <drh@noemail.net>
Fri, 2 Jun 2000 01:36:16 +0000 (01:36 +0000)
FossilOrigin-Name: a57ecd606c8caa67db240d1a4bc46c0a590fde0c

manifest
manifest.uuid
src/dbbe.c
src/main.c
src/vdbe.c

index 19d413c33b93f97463df239f500ab356bb495b4c..ebe1deba280c36d1fedfe622eb8471aed97f8503 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C :-)\s(CVS\s34)
-D 2000-06-02T01:17:37
+C :-)\s(CVS\s35)
+D 2000-06-02T01:36:16
 F COPYRIGHT 74a8a6531a42e124df07ab5599aad63870fa0bd4
 F Makefile.in 7ac2fef265940d93a544cb454efa836451559a71
 F README 6b5960603c7f8bf42fc022b4b6436f242f238dbb
@@ -7,12 +7,12 @@ F configure 00a5b5c82147a576fa6e82d7c1b0d55c321d6d2c x
 F configure.in 6ccfd5fc80517f7cfe605a7fc7e0f62d962a233c
 F doc/lemon.html e233a3e97a779c7a87e1bc4528c664a58e49dd47
 F src/build.c f56c47f08c2f01fd640abb920c5da6b6614fbf3f
-F src/dbbe.c 5ab70123cae6b2791843817448cbc4964328f542
+F src/dbbe.c a6ae5ac878b9b18ff82345b56917085cc0ab4cbd
 F src/dbbe.h a8a46f71238e0f09f3ec08fd9d1c8c7f4cdc49bf
 F src/delete.c e11433c14ed5cc8553cba14296b3baa3c23054bc
 F src/expr.c 91970700e3e39b2b725b028c166f588a5bb0c038
 F src/insert.c 5d713f4a05cef76a188207aa986776e02349ba70
-F src/main.c ff4e6abaeac2033cf2ec206f932f7b4c768c469c
+F src/main.c 9567f6f44102e5c8a8c5ca834727f29690ac2f79
 F src/parse.y 16322c46ec117082ef745715f7a4761f2491a0b2
 F src/select.c 25cada7cb2b0b4973b3e17c81ba1b1c887829f71
 F src/shell.c 9a42923e9c8ec1654dd1ef1aa113eca26dcf30db
@@ -22,7 +22,7 @@ F src/tclsqlite.c 10c00c460246cfba375b768c90b22bfe3c774c8f
 F src/tokenize.c 15c229fee77325334c6814652e429b0930eba6c1
 F src/update.c 1f7284e00921352c3ae699fb60f2c2fbf8098212
 F src/util.c da47fe65efa6ff4c5e663cc7c832964bd599c0d2
-F src/vdbe.c 8631fdffc2583c13594b34ffa9139928b7f3cb8f
+F src/vdbe.c 01e8a9e274d959ce72cc8c5a43ed144e781a6352
 F src/vdbe.h ab574c91c6328c5795f68b84074fbcf860eae70e
 F src/where.c bed9a8360cbfbf712bdc397c8e22216a5e5f9800
 F test/all.test 66a8a5b8291a472157944edcdce51a320ebd1f35
@@ -45,7 +45,7 @@ F www/c_interface.tcl f875864edf7974157d1c257ca08de854660882a5
 F www/changes.tcl 37f4906f0b03f2160d2b2e4ed3cedb0b91d253cb
 F www/index.tcl 001f8c8c4edbe20e25c508005a12f2f265f84c9c
 F www/sqlite.tcl 2a0056dd6d78839636176b770d9f37d12e66660e
-P 6b9056364e62cff017447ea979bb29dc78fb9f73
-R 16424dcd9ee13071fcab886f6e440991
+P 52338f4ab5990fefc61f615cd65c3a724b365199
+R 19c8832b6eed992164ced278747bfec1
 U drh
-Z 98d8da8fcec9ae290876645d0b50c778
+Z b10b3802981476d18ecff528a847002c
index a31bea748ac7bce2be29b33196a3ff7ce8d55651..e1c72a16cdb052aa69585c960513019860080a28 100644 (file)
@@ -1 +1 @@
-52338f4ab5990fefc61f615cd65c3a724b365199
\ No newline at end of file
+a57ecd606c8caa67db240d1a4bc46c0a590fde0c
\ No newline at end of file
index 321a5de2ef329c999201bb21bfba47437ba2cfa4..1f7765a217019a2661bb8a8dd773976492e9b998 100644 (file)
@@ -30,7 +30,7 @@
 ** relatively simple to convert to a different database such
 ** as NDBM, SDBM, or BerkeleyDB.
 **
-** $Id: dbbe.c,v 1.7 2000/06/02 01:17:37 drh Exp $
+** $Id: dbbe.c,v 1.8 2000/06/02 01:36:16 drh Exp $
 */
 #include "sqliteInt.h"
 #include <gdbm.h>
@@ -270,8 +270,8 @@ int sqliteDbbeOpenTable(
       sqliteFree(zFile);
       return SQLITE_NOMEM;
     }
-    if( pFile->zName ){
-      pFile->dbf = gdbm_open(pFile->zName, 0, rw_mask, mode, 0);
+    if( zFile ){
+      pFile->dbf = gdbm_open(zFile, 0, rw_mask, mode, 0);
     }else{
       int limit;
       struct rc4 *pRc4;
index ec960e169f9a43d84b7bf6e28082f415b32e57cc..430ebdd4f750f45d698d831178a6f304b1cb426f 100644 (file)
@@ -26,7 +26,7 @@
 ** other files are for internal use by SQLite and should not be
 ** accessed by users of the library.
 **
-** $Id: main.c,v 1.3 2000/06/02 01:17:37 drh Exp $
+** $Id: main.c,v 1.4 2000/06/02 01:36:16 drh Exp $
 */
 #include "sqliteInt.h"
 
@@ -100,7 +100,7 @@ static int sqliteInit(sqlite *db, char **pzErrMsg){
   ** database scheme.
   */
   static VdbeOp initProg[] = {
-    { OP_Open,     0, 0,  MASTER_NAME},
+    { OP_Open,     0, 1,  MASTER_NAME},
     { OP_Next,     0, 8,  0},           /* 1 */
     { OP_Field,    0, 0,  0},
     { OP_String,   0, 0,  "table"},
index 766773e0dcba11c692cf08f9b8d8de1c9195a08f..132649961a2ba8ca3fb9f3ed4d2f11975a6df7e2 100644 (file)
@@ -41,7 +41,7 @@
 ** But other routines are also provided to help in building up
 ** a program instruction by instruction.
 **
-** $Id: vdbe.c,v 1.7 2000/06/02 01:17:38 drh Exp $
+** $Id: vdbe.c,v 1.8 2000/06/02 01:36:16 drh Exp $
 */
 #include "sqliteInt.h"
 
@@ -1323,6 +1323,20 @@ int sqliteVdbeExec(
           sqliteDbbeCloseTable(p->aTab[i].pTable);
         }
         rc = sqliteDbbeOpenTable(p->pBe, pOp->p3, pOp->p2, &p->aTab[i].pTable);
+        switch( rc ){
+          case SQLITE_BUSY: {
+            sqliteSetString(pzErrMsg,"table ", pOp->p3, " is locked", 0);
+            break;
+          }
+          case SQLITE_READONLY: {
+            sqliteSetString(pzErrMsg,"table ", pOp->p3, 
+               " is already opened for reading", 0);
+            break;
+          }
+          case SQLITE_NOMEM: {
+            goto no_mem;
+          }
+        }
         p->aTab[i].index = 0;
         break;
       }
@@ -1714,6 +1728,9 @@ int sqliteVdbeExec(
           sqliteDbbeCloseTempFile(p->pBe, p->apList[i]);
         }
         rc = sqliteDbbeOpenTempFile(p->pBe, &p->apList[i]);
+        if( rc!=SQLITE_OK ){
+          sqliteSetString(pzErrMsg, "unable to open a temporary file", 0);
+        }
         break;
       }
 
@@ -2224,5 +2241,4 @@ bad_instruction:
   sqliteSetString(pzErrMsg, "illegal operation at ", zBuf, 0);
   rc = SQLITE_INTERNAL;
   goto cleanup;
-
 }