diff options
author | drh <drh@noemail.net> | 2004-06-19 16:06:10 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2004-06-19 16:06:10 +0000 |
commit | 124b27e65463e8897de17b067ce4a7b11b5602f5 (patch) | |
tree | 3d380d9062765447adf9b7bad7963a16f9823ce2 /src/attach.c | |
parent | f92c7ff74a2fa6c9fb110321430f25e4b3179b23 (diff) | |
download | sqlite-124b27e65463e8897de17b067ce4a7b11b5602f5.tar.gz sqlite-124b27e65463e8897de17b067ce4a7b11b5602f5.zip |
Omit the DB_Locked and DB_Cookie flags. Other minor cleanup. (CVS 1642)
FossilOrigin-Name: 01f74b420c3f24918c066172e09cebbb22568faf
Diffstat (limited to 'src/attach.c')
-rw-r--r-- | src/attach.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/src/attach.c b/src/attach.c index 509db05a7..9468f203a 100644 --- a/src/attach.c +++ b/src/attach.c @@ -11,7 +11,7 @@ ************************************************************************* ** This file contains code used to implement the ATTACH and DETACH commands. ** -** $Id: attach.c,v 1.16 2004/06/19 14:49:12 drh Exp $ +** $Id: attach.c,v 1.17 2004/06/19 16:06:11 drh Exp $ */ #include "sqliteInt.h" @@ -59,7 +59,8 @@ void sqlite3Attach(Parse *pParse, Token *pFilename, Token *pDbname, Token *pKey) zName = sqlite3NameFromToken(pDbname); if( zName==0 ) return; for(i=0; i<db->nDb; i++){ - if( db->aDb[i].zName && sqlite3StrICmp(db->aDb[i].zName, zName)==0 ){ + char *z = db->aDb[i].zName; + if( z && sqlite3StrICmp(z, zName)==0 ){ sqlite3ErrorMsg(pParse, "database %z is already in use", zName); pParse->rc = SQLITE_ERROR; sqliteFree(zFile); @@ -133,15 +134,17 @@ void sqlite3Detach(Parse *pParse, Token *pDbname){ int i; sqlite *db; Vdbe *v; + Db *pDb; v = sqlite3GetVdbe(pParse); sqlite3VdbeAddOp(v, OP_Halt, 0, 0); if( pParse->explain ) return; db = pParse->db; for(i=0; i<db->nDb; i++){ - if( db->aDb[i].pBt==0 || db->aDb[i].zName==0 ) continue; - if( strlen(db->aDb[i].zName)!=pDbname->n ) continue; - if( sqlite3StrNICmp(db->aDb[i].zName, pDbname->z, pDbname->n)==0 ) break; + pDb = &db->aDb[i]; + if( pDb->pBt==0 || pDb->zName==0 ) continue; + if( strlen(pDb->zName)!=pDbname->n ) continue; + if( sqlite3StrNICmp(pDb->zName, pDbname->z, pDbname->n)==0 ) break; } if( i>=db->nDb ){ sqlite3ErrorMsg(pParse, "no such database: %T", pDbname); @@ -161,9 +164,9 @@ void sqlite3Detach(Parse *pParse, Token *pDbname){ return; } #endif /* SQLITE_OMIT_AUTHORIZATION */ - sqlite3BtreeClose(db->aDb[i].pBt); - db->aDb[i].pBt = 0; - sqliteFree(db->aDb[i].zName); + sqlite3BtreeClose(pDb->pBt); + pDb->pBt = 0; + sqliteFree(pDb->zName); sqlite3ResetInternalSchema(db, i); db->nDb--; if( i<db->nDb ){ |