diff options
author | drh <drh@noemail.net> | 2006-08-24 02:42:27 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2006-08-24 02:42:27 +0000 |
commit | 882e8e4df2cc0ea50735fa27789a8cc13ea33675 (patch) | |
tree | 542a7c3bd79f8ad4133fdfa09f0056cc21755011 /src/tclsqlite.c | |
parent | 1717edd15785dca12eccd57d0bcb28402843fd1e (diff) | |
download | sqlite-882e8e4df2cc0ea50735fa27789a8cc13ea33675.tar.gz sqlite-882e8e4df2cc0ea50735fa27789a8cc13ea33675.zip |
Tcl interface does filename translation prior to calling sqlite3_open().
Ticket #1937. (CVS 3364)
FossilOrigin-Name: 5696e0cb771ea62df6f91cb03dfc428af1441e9e
Diffstat (limited to 'src/tclsqlite.c')
-rw-r--r-- | src/tclsqlite.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/tclsqlite.c b/src/tclsqlite.c index 5bc6d122c..1d5eee14b 100644 --- a/src/tclsqlite.c +++ b/src/tclsqlite.c @@ -11,7 +11,7 @@ ************************************************************************* ** A TCL Interface to SQLite ** -** $Id: tclsqlite.c,v 1.167 2006/08/23 20:07:22 drh Exp $ +** $Id: tclsqlite.c,v 1.168 2006/08/24 02:42:28 drh Exp $ */ #ifndef NO_TCL /* Omit this whole file if TCL is unavailable */ @@ -2001,6 +2001,7 @@ static int DbMain(void *cd, Tcl_Interp *interp, int objc,Tcl_Obj *const*objv){ const char *zArg; char *zErrMsg; const char *zFile; + Tcl_DString translatedFilename; if( objc==2 ){ zArg = Tcl_GetStringFromObj(objv[1], 0); if( strcmp(zArg,"-version")==0 ){ @@ -2049,7 +2050,9 @@ static int DbMain(void *cd, Tcl_Interp *interp, int objc,Tcl_Obj *const*objv){ } memset(p, 0, sizeof(*p)); zFile = Tcl_GetStringFromObj(objv[2], 0); + zFile = Tcl_TranslateFileName(interp, zFile, &translatedFilename); sqlite3_open(zFile, &p->db); + Tcl_DStringFree(&translatedFilename); if( SQLITE_OK!=sqlite3_errcode(p->db) ){ zErrMsg = strdup(sqlite3_errmsg(p->db)); sqlite3_close(p->db); |