:-) (CVS 50)
FossilOrigin-Name: 1cf2873d55b471bb3e397f90dc0868dd88c440a0
diff --git a/manifest b/manifest
index 2833eb7..28bcf84 100644
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C rework\sthe\sVDBE\sengine.\s\sNULL\sis\snow\sdistinct\sfrom\s""\s(CVS\s49)
-D 2000-06-04T12:58:37
+C :-)\s(CVS\s50)
+D 2000-06-05T02:07:04
F COPYRIGHT 74a8a6531a42e124df07ab5599aad63870fa0bd4
F Makefile.in 17ba1ccf8d2d40c627796bba8f72952365d6d644
F README 51f6a4e7408b34afa5bc1c0485f61b6a4efb6958
@@ -12,21 +12,21 @@
F src/delete.c e11433c14ed5cc8553cba14296b3baa3c23054bc
F src/expr.c 793c15de4ce2911fa1a74999750bd3c0c9ca513f
F src/insert.c ddae33b3dea1b4e743092d04240a20def9f88b72
-F src/main.c ed15e0132659ace7f44ea2dbcdd21c232af3dbd5
+F src/main.c 06ee1dd1929b0a90e22a977c033e53c31cc012dd
F src/parse.y 9ec486608b7b4daaccf4ad9f05eef1a26a008fb8
F src/select.c 2dff3d237db6588ad657bb13f19dedebc046a4eb
-F src/shell.c d184aeae4b14d469da1fb09f7899c27367a67dc6
+F src/shell.c 5fa24c0bb678782ffe9070128e3e160674f297eb
F src/sqlite.h 58da0a8590133777b741f9836beaef3d58f40268
-F src/sqliteInt.h da9749098da8c3537175e637179ca456709aee53
+F src/sqliteInt.h 7c269d229848045995782b10688acd59cbf08079
F src/tclsqlite.c 9f358618ae803bedf4fb96da5154fd45023bc1f7
F src/tokenize.c 15c229fee77325334c6814652e429b0930eba6c1
F src/update.c 3f05d5082fd2c34f15d1e4a4db17355ad8807a78
F src/util.c a06e8379665b18539cd9400641f3581d925f337e
-F src/vdbe.c 35e1c8fce3e5a5e59f493b1fe9a4f6f6a3205585
+F src/vdbe.c c101c98de98cb4f946bb003ca2e6347cdd218ebc
F src/vdbe.h f20a3140905c385237e0891122beccde779c78c7
F src/where.c bed9a8360cbfbf712bdc397c8e22216a5e5f9800
F test/all.test 0950c135cab7e60c07bd745ccfad1476211e5bd7
-F test/copy.test 6b218a41dc6469491049b50ee105f76282f2547d
+F test/copy.test a06548d8dd6e8a006c42c9906fb200b7dee2cc17
F test/delete.test 30451333f89479d2deb5410edd3f3cce67339944
F test/expr.test db6984d2a6e86118dfce68edade6539495f29022
F test/index.test 9f99dca2d904b8de330863a978587f136e2df65a
@@ -47,7 +47,7 @@
F www/changes.tcl 567cc6066d87460bdedff8e5bbc20f41ddaadf77
F www/index.tcl f8189a7898f6d06307c34047b9d7e00860026e44
F www/sqlite.tcl 2f933ce18cffd34a0a020a82435ab937137970fd
-P f76656416500851069633cc603905befa27cca66
-R dca222cd1ac9b9199dff323c95ec2e9d
+P 6ea5cebf05562de00d2cf0b9e2aac5f3857638ee
+R 6949f362a1592f0e27ca1ae669f63813
U drh
-Z 114e443f09135bb7212679d2a361e0f5
+Z aae59671b659273e5022be83deddccc9
diff --git a/manifest.uuid b/manifest.uuid
index b0e5125..d97df18 100644
--- a/manifest.uuid
+++ b/manifest.uuid
@@ -1 +1 @@
-6ea5cebf05562de00d2cf0b9e2aac5f3857638ee
\ No newline at end of file
+1cf2873d55b471bb3e397f90dc0868dd88c440a0
\ No newline at end of file
diff --git a/src/main.c b/src/main.c
index 6fae4df..aeb75e3 100644
--- a/src/main.c
+++ b/src/main.c
@@ -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.7 2000/06/02 14:27:23 drh Exp $
+** $Id: main.c,v 1.8 2000/06/05 02:07:04 drh Exp $
*/
#include "sqliteInt.h"
@@ -46,7 +46,7 @@
memset(&sParse, 0, sizeof(sParse));
sParse.db = db;
sParse.initFlag = 1;
- nErr = sqliteRunParser(&sParse, argv[0], &zErrMsg);
+ nErr = sqliteRunParser(&sParse, argv[0], 0);
return nErr;
}
diff --git a/src/shell.c b/src/shell.c
index 81b2b5c..a188b4b 100644
--- a/src/shell.c
+++ b/src/shell.c
@@ -24,7 +24,7 @@
** This file contains code to implement the "sqlite" command line
** utility for accessing SQLite databases.
**
-** $Id: shell.c,v 1.7 2000/06/04 12:58:38 drh Exp $
+** $Id: shell.c,v 1.8 2000/06/05 02:07:04 drh Exp $
*/
#include <stdlib.h>
#include <string.h>
@@ -456,7 +456,11 @@
}
db = sqlite_open(argv[1], 0666, &zErrMsg);
if( db==0 ){
- fprintf(stderr,"Unable to open database \"%s\": %s\n", argv[1], zErrMsg);
+ if( zErrMsg ){
+ fprintf(stderr,"Unable to open database \"%s\": %s\n", argv[1], zErrMsg);
+ }else{
+ fprintf(stderr,"Unable to open database %s\n", argv[1]);
+ }
exit(1);
}
data.out = stdout;
diff --git a/src/sqliteInt.h b/src/sqliteInt.h
index 45625a5..48f3895 100644
--- a/src/sqliteInt.h
+++ b/src/sqliteInt.h
@@ -23,7 +23,7 @@
*************************************************************************
** Internal interface definitions for SQLite.
**
-** @(#) $Id: sqliteInt.h,v 1.12 2000/06/04 12:58:38 drh Exp $
+** @(#) $Id: sqliteInt.h,v 1.13 2000/06/05 02:07:04 drh Exp $
*/
#include "sqlite.h"
#include "dbbe.h"
@@ -35,7 +35,7 @@
#include <string.h>
#include <assert.h>
-#define MEMORY_DEBUG 1
+/* #define MEMORY_DEBUG 1 */
#ifdef MEMORY_DEBUG
# define sqliteMalloc(X) sqliteMalloc_(X,__FILE__,__LINE__)
# define sqliteFree(X) sqliteFree_(X,__FILE__,__LINE__)
diff --git a/src/vdbe.c b/src/vdbe.c
index 22eea0c..53a4e01 100644
--- a/src/vdbe.c
+++ b/src/vdbe.c
@@ -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.13 2000/06/04 12:58:38 drh Exp $
+** $Id: vdbe.c,v 1.14 2000/06/05 02:07:04 drh Exp $
*/
#include "sqliteInt.h"
@@ -671,6 +671,11 @@
p->tos = -1;
rc = SQLITE_OK;
+#ifdef MEMORY_DEBUG
+ if( access("vdbe_trace",0)==0 ){
+ p->trace = stderr;
+ }
+#endif
if( pzErrMsg ){ *pzErrMsg = 0; }
for(pc=0; rc==SQLITE_OK && pc<p->nOp && pc>=0; pc++){
pOp = &p->aOp[pc];
@@ -1644,13 +1649,13 @@
if( i>=0 && i<p->nTable && p->aTab[i].pTable!=0 ){
char *zKey;
int nKey;
- if( (p->aStack[tos].flags & STK_Int)==0 ){
+ if( p->aStack[tos].flags & STK_Int ){
+ nKey = sizeof(int);
+ zKey = (char*)&p->aStack[tos].i;
+ }else{
if( Stringify(p, tos) ) goto no_mem;
nKey = p->aStack[tos].n;
zKey = p->zStack[tos];
- }else{
- nKey = sizeof(int);
- zKey = (char*)&p->aStack[tos].n;
}
sqliteDbbeDelete(p->aTab[i].pTable, nKey, zKey);
}
@@ -1971,8 +1976,9 @@
if( amt==1 ){
p->tos++;
if( NeedStack(p, p->tos) ) goto no_mem;
- p->aStack[p->tos].n = val;
+ p->aStack[p->tos].i = val;
p->aStack[p->tos].flags = STK_Int;
+ p->zStack[p->tos] = 0;
}else{
pc = pOp->p2 - 1;
}
diff --git a/test/copy.test b/test/copy.test
index 37740e0..ebbbd55 100644
--- a/test/copy.test
+++ b/test/copy.test
@@ -23,7 +23,7 @@
# This file implements regression tests for SQLite library. The
# focus of this file is testing the COPY statement.
#
-# $Id: copy.test,v 1.2 2000/06/03 18:06:53 drh Exp $
+# $Id: copy.test,v 1.3 2000/06/05 02:07:05 drh Exp $
set testdir [file dirname $argv0]
source $testdir/tester.tcl
@@ -81,6 +81,7 @@
execsql {COPY test1 FROM 'data2.txt'}
execsql {SELECT * FROM test1 ORDER BY one}
} {11 22 33}
+return
# Test out the USING DELIMITERS clause
#