SQLite

Check-in [15d88edf76]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Port the corruption bug fix of check-in (5938) into a branch off of version 3.6.6. (CVS 5947)
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | branch_3_6_6
Files: files | file ages | folders
SHA1: 15d88edf7671822c57238c3f85adf0b40b13e3e2
User & Date: drh 2008-11-22 14:07:49.000
Original Comment: Port the corruption bug fix of check-in (5938) into a branch off of version 3.6.6. (CVS 5947)
Context
2008-11-22
15:51
Version 3.6.6.1 (CVS 5948) (check-in: c2266aa094 user: drh tags: branch_3_6_6)
14:07
Port the corruption bug fix of check-in (5938) into a branch off of version 3.6.6. (CVS 5947) (check-in: 15d88edf76 user: drh tags: branch_3_6_6)
2008-11-20
18:20
When a memory allocation fails on the %Q conversion in sqlite3_mprintf(), make sure the error is reported back up the call stack. (CVS 5933) (check-in: eebacbc9d7 user: drh tags: trunk)
Changes
Side-by-Side Diff Ignore Whitespace Patch
Changes to VERSION.
1


1
-
+
3.6.6
3.6.6.1
Changes to src/btree.c.
1
2
3
4
5
6
7
8
9
10
11
12

13
14
15
16
17
18
19
1
2
3
4
5
6
7
8
9
10
11

12
13
14
15
16
17
18
19











-
+







/*
** 2004 April 6
**
** The author disclaims copyright to this source code.  In place of
** a legal notice, here is a blessing:
**
**    May you do good and not evil.
**    May you find forgiveness for yourself and forgive others.
**    May you share freely, never taking more than you give.
**
*************************************************************************
** $Id: btree.c,v 1.539 2008/11/19 10:22:33 danielk1977 Exp $
** $Id: btree.c,v 1.539.2.1 2008/11/22 14:07:49 drh Exp $
**
** This file implements a external (disk-based) database using BTrees.
** See the header comment on "btreeInt.h" for additional information.
** Including a description of file format and an overview of operation.
*/
#include "btreeInt.h"

4300
4301
4302
4303
4304
4305
4306

4307
4308
4309





4310
4311
4312
4313
4314
4315
4316
4300
4301
4302
4303
4304
4305
4306
4307



4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319







+
-
-
-
+
+
+
+
+







  }

  assert( *pPgno!=PENDING_BYTE_PAGE(pBt) );

end_allocate_page:
  releasePage(pTrunk);
  releasePage(pPrevTrunk);
  if( rc==SQLITE_OK ){
  if( rc==SQLITE_OK && sqlite3PagerPageRefcount((*ppPage)->pDbPage)>1 ){
    releasePage(*ppPage);
    return SQLITE_CORRUPT_BKPT;
    if( sqlite3PagerPageRefcount((*ppPage)->pDbPage)>1 ){
      releasePage(*ppPage);
      return SQLITE_CORRUPT_BKPT;
    }
    (*ppPage)->isInit = 0;
  }
  return rc;
}

/*
** Add a page of the database file to the freelist.
**