diff options
author | drh <drh@noemail.net> | 2003-01-29 14:06:07 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2003-01-29 14:06:07 +0000 |
commit | 326dce74511a963dba56c046a86e82193c44e128 (patch) | |
tree | 0d60f783771ac4eefc7698de64031c2ac883e5ae /src/main.c | |
parent | b86ccfb26ec22446a99b12c38e295b5505201556 (diff) | |
download | sqlite-326dce74511a963dba56c046a86e82193c44e128.tar.gz sqlite-326dce74511a963dba56c046a86e82193c44e128.zip |
The callback-free API is now working, though much more testing is need. (CVS 853)
FossilOrigin-Name: 162b259188e6967fe9c3722da26b81aab5655d83
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/main.c b/src/main.c index 2be750bec..7b5c76e5e 100644 --- a/src/main.c +++ b/src/main.c @@ -14,7 +14,7 @@ ** other files are for internal use by SQLite and should not be ** accessed by users of the library. ** -** $Id: main.c,v 1.110 2003/01/28 23:13:12 drh Exp $ +** $Id: main.c,v 1.111 2003/01/29 14:06:08 drh Exp $ */ #include "sqliteInt.h" #include "os.h" @@ -622,8 +622,7 @@ static int sqliteMain( sqliteSetString(pzErrMsg, "obsolete database file format", 0); return SQLITE_ERROR; } - if( db->recursionDepth==0 ){ db->nChange = 0; } - db->recursionDepth++; + if( db->pVdbe==0 ){ db->nChange = 0; } memset(&sParse, 0, sizeof(sParse)); sParse.db = db; sParse.pBe = db->pBe; @@ -642,6 +641,7 @@ static int sqliteMain( db->flags &= ~SQLITE_InTrans; sqliteResetInternalSchema(db); } + if( sParse.rc==SQLITE_DONE ) sParse.rc = SQLITE_OK; if( sParse.rc!=SQLITE_OK && pzErrMsg && *pzErrMsg==0 ){ sqliteSetString(pzErrMsg, sqlite_error_string(sParse.rc), 0); } @@ -649,11 +649,10 @@ static int sqliteMain( if( sParse.rc==SQLITE_SCHEMA ){ sqliteResetInternalSchema(db); } - db->recursionDepth--; if( sParse.useCallback==0 ){ assert( ppVm ); - *ppVm = sParse.pVdbe; - *pzTail = &sParse.sLastToken.z[sParse.sLastToken.n]; + *ppVm = (sqlite_vm*)sParse.pVdbe; + *pzTail = sParse.zTail; } if( sqliteSafetyOff(db) ) goto exec_misuse; return sParse.rc; |