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

Fix a pager reference count leak in btree that occurs on an OOM following

a database page size change. (CVS 6875)

FossilOrigin-Name: c6dfc8bd3911b4c93969bfc13d9931965feed674
This commit is contained in:
drh
2009-07-10 16:51:30 +00:00
parent e932ba260e
commit 5e483939bc
3 changed files with 10 additions and 11 deletions

View File

@@ -9,7 +9,7 @@
** May you share freely, never taking more than you give.
**
*************************************************************************
** $Id: btree.c,v 1.673 2009/07/10 02:52:21 drh Exp $
** $Id: btree.c,v 1.674 2009/07/10 16:51:30 drh Exp $
**
** This file implements a external (disk-based) database using BTrees.
** See the header comment on "btreeInt.h" for additional information.
@@ -2248,8 +2248,7 @@ static int lockBtree(BtShared *pBt){
freeTempSpace(pBt);
rc = sqlite3PagerSetPagesize(pBt->pPager, &pBt->pageSize,
pageSize-usableSize);
if( rc ) goto page1_init_failed;
return SQLITE_OK;
return rc;
}
if( usableSize<480 ){
goto page1_init_failed;