1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-07 02:42:48 +03:00

Handle errors in saving cursor positions during a rollback by aborting all active statements. (CVS 3027)

FossilOrigin-Name: 5df9f022bfb22976f22b996bda169635354b825c
This commit is contained in:
danielk1977
2006-01-24 16:37:57 +00:00
parent 2b8c13e7a7
commit 8d34dfd656
7 changed files with 111 additions and 37 deletions

View File

@@ -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.330 2006/01/24 13:09:33 danielk1977 Exp $
** $Id: main.c,v 1.331 2006/01/24 16:37:58 danielk1977 Exp $
*/
#include "sqliteInt.h"
#include "os.h"
@@ -131,9 +131,6 @@ int sqlite3_close(sqlite3 *db){
return SQLITE_ERROR;
}
/* sqlite3_close() may not invoke sqliteMalloc(). */
sqlite3MallocDisallow();
for(j=0; j<db->nDb; j++){
struct Db *pDb = &db->aDb[j];
if( pDb->pBt ){
@@ -177,7 +174,6 @@ int sqlite3_close(sqlite3 *db){
*/
sqliteFree(db->aDb[1].pSchema);
sqliteFree(db);
sqlite3MallocAllow();
sqlite3ReleaseThreadData();
return SQLITE_OK;
}