diff options
author | Ilia Alshanetsky <iliaa@php.net> | 2004-01-08 14:25:01 +0000 |
---|---|---|
committer | Ilia Alshanetsky <iliaa@php.net> | 2004-01-08 14:25:01 +0000 |
commit | a4ea8eb44ec63e407007abea957221e92a081a31 (patch) | |
tree | 23566b703ee020fcee70beb3bc38d3e11c37e14c /ext/sqlite/libsqlite/src/attach.c | |
parent | 2cf3cb6407aa108f21149782245c61e7e393ec59 (diff) | |
download | php-git-a4ea8eb44ec63e407007abea957221e92a081a31.tar.gz |
Upgrade bundled libsqlite to 2.8.9
Diffstat (limited to 'ext/sqlite/libsqlite/src/attach.c')
-rw-r--r-- | ext/sqlite/libsqlite/src/attach.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/ext/sqlite/libsqlite/src/attach.c b/ext/sqlite/libsqlite/src/attach.c index 5b57e29e16..5269238e0f 100644 --- a/ext/sqlite/libsqlite/src/attach.c +++ b/ext/sqlite/libsqlite/src/attach.c @@ -64,7 +64,6 @@ void sqliteAttach(Parse *pParse, Token *pFilename, Token *pDbname){ sqliteErrorMsg(pParse, "database %z is already in use", zName); pParse->rc = SQLITE_ERROR; sqliteFree(zFile); - sqliteFree(zName); return; } } @@ -92,8 +91,16 @@ void sqliteAttach(Parse *pParse, Token *pFilename, Token *pDbname){ sqliteFree(zFile); db->flags &= ~SQLITE_Initialized; if( pParse->nErr ) return; - rc = sqliteInit(pParse->db, &pParse->zErrMsg); + if( rc==SQLITE_OK ){ + rc = sqliteInit(pParse->db, &pParse->zErrMsg); + } if( rc ){ + int i = db->nDb - 1; + assert( i>=2 ); + if( db->aDb[i].pBt ){ + sqliteBtreeClose(db->aDb[i].pBt); + db->aDb[i].pBt = 0; + } sqliteResetInternalSchema(db, 0); pParse->nErr++; pParse->rc = SQLITE_ERROR; |