/ Check-in [76097440]
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

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

Overview
Comment:Fix to payload size overflow detection in the cellSizePtr() change of the previous check-in.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 7609744014c6a84a8379794a0351a2e9626ec86b
User & Date: drh 2014-09-22 20:38:10
Context
2014-09-23
01:40
Adjust skip-scan cost estimates slightly so that a full table scan is preferred over a skip-scan to a column with only two distinct values. check-in: ae9a42b2 user: drh tags: trunk
2014-09-22
20:38
Fix to payload size overflow detection in the cellSizePtr() change of the previous check-in. check-in: 76097440 user: drh tags: trunk
19:51
Size reduction and substantial performance increase for cellSizePtr(). check-in: bc8bbf32 user: drh tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/btree.c.

1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
  if( pPage->intKey==0 || pPage->hasData ){
    nSize = *pIter;
    if( nSize>=0x80 ){
      pEnd = &pIter[9];
      nSize &= 0x7f;
      do{
        nSize = (nSize<<7) | (*++pIter & 0x7f);
      }while( *(pIter)>=0x80 && pIter<&pCell[6] );
    }
    pIter++;
  }else{
    nSize = 0;
  }
  if( pPage->intKey ){
    /* pIter now points at the 64-bit integer key value, a variable length 







|







1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
  if( pPage->intKey==0 || pPage->hasData ){
    nSize = *pIter;
    if( nSize>=0x80 ){
      pEnd = &pIter[9];
      nSize &= 0x7f;
      do{
        nSize = (nSize<<7) | (*++pIter & 0x7f);
      }while( *(pIter)>=0x80 && pIter<pEnd );
    }
    pIter++;
  }else{
    nSize = 0;
  }
  if( pPage->intKey ){
    /* pIter now points at the 64-bit integer key value, a variable length