Index: third_party/sqlite/src/src/test3.c |
diff --git a/third_party/sqlite/src/src/test3.c b/third_party/sqlite/src/src/test3.c |
index ef004ca7133aa239887d9532758d01d147d7a298..e3ed310c8104fe3621cebb0f51d10145018d4fac 100644 |
--- a/third_party/sqlite/src/src/test3.c |
+++ b/third_party/sqlite/src/src/test3.c |
@@ -19,31 +19,7 @@ |
#include <stdlib.h> |
#include <string.h> |
-/* |
-** Interpret an SQLite error number |
-*/ |
-static char *errorName(int rc){ |
- char *zName; |
- switch( rc ){ |
- case SQLITE_OK: zName = "SQLITE_OK"; break; |
- case SQLITE_ERROR: zName = "SQLITE_ERROR"; break; |
- case SQLITE_PERM: zName = "SQLITE_PERM"; break; |
- case SQLITE_ABORT: zName = "SQLITE_ABORT"; break; |
- case SQLITE_BUSY: zName = "SQLITE_BUSY"; break; |
- case SQLITE_NOMEM: zName = "SQLITE_NOMEM"; break; |
- case SQLITE_READONLY: zName = "SQLITE_READONLY"; break; |
- case SQLITE_INTERRUPT: zName = "SQLITE_INTERRUPT"; break; |
- case SQLITE_IOERR: zName = "SQLITE_IOERR"; break; |
- case SQLITE_CORRUPT: zName = "SQLITE_CORRUPT"; break; |
- case SQLITE_FULL: zName = "SQLITE_FULL"; break; |
- case SQLITE_CANTOPEN: zName = "SQLITE_CANTOPEN"; break; |
- case SQLITE_PROTOCOL: zName = "SQLITE_PROTOCOL"; break; |
- case SQLITE_EMPTY: zName = "SQLITE_EMPTY"; break; |
- case SQLITE_LOCKED: zName = "SQLITE_LOCKED"; break; |
- default: zName = "SQLITE_Unknown"; break; |
- } |
- return zName; |
-} |
+extern const char *sqlite3ErrName(int); |
/* |
** A bogus sqlite3 connection structure for use in the btree |
@@ -66,6 +42,8 @@ static int btree_open( |
Btree *pBt; |
int rc, nCache; |
char zBuf[100]; |
+ int n; |
+ char *zFilename; |
if( argc!=3 ){ |
Tcl_AppendResult(interp, "wrong # args: should be \"", argv[0], |
" FILENAME NCACHE FLAGS\"", 0); |
@@ -78,10 +56,16 @@ static int btree_open( |
sDb.mutex = sqlite3MutexAlloc(SQLITE_MUTEX_RECURSIVE); |
sqlite3_mutex_enter(sDb.mutex); |
} |
- rc = sqlite3BtreeOpen(argv[1], &sDb, &pBt, 0, |
+ n = (int)strlen(argv[1]); |
+ zFilename = sqlite3_malloc( n+2 ); |
+ if( zFilename==0 ) return TCL_ERROR; |
+ memcpy(zFilename, argv[1], n+1); |
+ zFilename[n+1] = 0; |
+ rc = sqlite3BtreeOpen(sDb.pVfs, zFilename, &sDb, &pBt, 0, |
SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE | SQLITE_OPEN_MAIN_DB); |
+ sqlite3_free(zFilename); |
if( rc!=SQLITE_OK ){ |
- Tcl_AppendResult(interp, errorName(rc), 0); |
+ Tcl_AppendResult(interp, sqlite3ErrName(rc), 0); |
return TCL_ERROR; |
} |
sqlite3BtreeSetCacheSize(pBt, nCache); |
@@ -111,7 +95,7 @@ static int btree_close( |
pBt = sqlite3TestTextToPtr(argv[1]); |
rc = sqlite3BtreeClose(pBt); |
if( rc!=SQLITE_OK ){ |
- Tcl_AppendResult(interp, errorName(rc), 0); |
+ Tcl_AppendResult(interp, sqlite3ErrName(rc), 0); |
return TCL_ERROR; |
} |
nRefSqlite3--; |
@@ -148,7 +132,7 @@ static int btree_begin_transaction( |
rc = sqlite3BtreeBeginTrans(pBt, 1); |
sqlite3BtreeLeave(pBt); |
if( rc!=SQLITE_OK ){ |
- Tcl_AppendResult(interp, errorName(rc), 0); |
+ Tcl_AppendResult(interp, sqlite3ErrName(rc), 0); |
return TCL_ERROR; |
} |
return TCL_OK; |
@@ -242,7 +226,7 @@ static int btree_cursor( |
sqlite3BtreeLeave(pBt); |
if( rc ){ |
ckfree((char *)pCur); |
- Tcl_AppendResult(interp, errorName(rc), 0); |
+ Tcl_AppendResult(interp, sqlite3ErrName(rc), 0); |
return TCL_ERROR; |
} |
sqlite3_snprintf(sizeof(zBuf), zBuf,"%p", pCur); |
@@ -277,7 +261,7 @@ static int btree_close_cursor( |
sqlite3BtreeLeave(pBt); |
ckfree((char *)pCur); |
if( rc ){ |
- Tcl_AppendResult(interp, errorName(rc), 0); |
+ Tcl_AppendResult(interp, sqlite3ErrName(rc), 0); |
return TCL_ERROR; |
} |
return SQLITE_OK; |
@@ -311,7 +295,7 @@ static int btree_next( |
rc = sqlite3BtreeNext(pCur, &res); |
sqlite3BtreeLeave(pCur->pBtree); |
if( rc ){ |
- Tcl_AppendResult(interp, errorName(rc), 0); |
+ Tcl_AppendResult(interp, sqlite3ErrName(rc), 0); |
return TCL_ERROR; |
} |
sqlite3_snprintf(sizeof(zBuf),zBuf,"%d",res); |
@@ -346,7 +330,7 @@ static int btree_first( |
rc = sqlite3BtreeFirst(pCur, &res); |
sqlite3BtreeLeave(pCur->pBtree); |
if( rc ){ |
- Tcl_AppendResult(interp, errorName(rc), 0); |
+ Tcl_AppendResult(interp, sqlite3ErrName(rc), 0); |
return TCL_ERROR; |
} |
sqlite3_snprintf(sizeof(zBuf),zBuf,"%d",res); |
@@ -457,7 +441,7 @@ static int btree_varint_test( |
if( Tcl_GetInt(interp, argv[4], (int*)&incr) ) return TCL_ERROR; |
in = start; |
in *= mult; |
- for(i=0; i<count; i++){ |
+ for(i=0; i<(int)count; i++){ |
char zErr[200]; |
n1 = putVarint(zBuf, in); |
if( n1>9 || n1<1 ){ |