Fossil SCM

Update the built-in SQLite to the latest 3.7.3 beta.

drh 2010-10-07 13:37 trunk
Commit daf28132a9573c16b2e3121acff53ed70c1b00f2
2 files changed +36 -37 +1 -1
+36 -37
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -650,11 +650,11 @@
650650
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
651651
** [sqlite_version()] and [sqlite_source_id()].
652652
*/
653653
#define SQLITE_VERSION "3.7.3"
654654
#define SQLITE_VERSION_NUMBER 3007003
655
-#define SQLITE_SOURCE_ID "2010-10-04 23:55:51 ece641eb8951c6314cedbdb3243f91cb199c3239"
655
+#define SQLITE_SOURCE_ID "2010-10-07 13:29:13 e55ada89246d4cc5f476891c70572dc7c1c3643e"
656656
657657
/*
658658
** CAPI3REF: Run-Time Library Version Numbers
659659
** KEYWORDS: sqlite3_version, sqlite3_sourceid
660660
**
@@ -26956,16 +26956,26 @@
2695626956
2695726957
/* Parameter isDelete is only used on vxworks. Express this explicitly
2695826958
** here to prevent compiler warnings about unused parameters.
2695926959
*/
2696026960
UNUSED_PARAMETER(isDelete);
26961
+
26962
+ /* Usually the path zFilename should not be a relative pathname. The
26963
+ ** exception is when opening the proxy "conch" file in builds that
26964
+ ** include the special Apple locking styles.
26965
+ */
26966
+#if defined(__APPLE__) && SQLITE_ENABLE_LOCKING_STYLE
26967
+ assert( zFilename==0 || zFilename[0]=='/'
26968
+ || pVfs->pAppData==(void*)&autolockIoFinder );
26969
+#else
26970
+ assert( zFilename==0 || zFilename[0]=='/' );
26971
+#endif
2696126972
2696226973
OSTRACE(("OPEN %-3d %s\n", h, zFilename));
2696326974
pNew->h = h;
2696426975
pNew->dirfd = dirfd;
2696526976
pNew->fileFlags = 0;
26966
- assert( zFilename==0 || zFilename[0]=='/' ); /* Never a relative pathname */
2696726977
pNew->zPath = zFilename;
2696826978
2696926979
#if OS_VXWORKS
2697026980
pNew->pId = vxworksFindFileId(zFilename);
2697126981
if( pNew->pId==0 ){
@@ -39764,34 +39774,34 @@
3976439774
/* Higher-level routines never call this function if database is not
3976539775
** writable. But check anyway, just for robustness. */
3976639776
if( NEVER(pPager->readOnly) ) return SQLITE_PERM;
3976739777
3976839778
CHECK_PAGE(pPg);
39779
+
39780
+ /* The journal file needs to be opened. Higher level routines have already
39781
+ ** obtained the necessary locks to begin the write-transaction, but the
39782
+ ** rollback journal might not yet be open. Open it now if this is the case.
39783
+ **
39784
+ ** This is done before calling sqlite3PcacheMakeDirty() on the page.
39785
+ ** Otherwise, if it were done after calling sqlite3PcacheMakeDirty(), then
39786
+ ** an error might occur and the pager would end up in WRITER_LOCKED state
39787
+ ** with pages marked as dirty in the cache.
39788
+ */
39789
+ if( pPager->eState==PAGER_WRITER_LOCKED ){
39790
+ rc = pager_open_journal(pPager);
39791
+ if( rc!=SQLITE_OK ) return rc;
39792
+ }
39793
+ assert( pPager->eState>=PAGER_WRITER_CACHEMOD );
39794
+ assert( assert_pager_state(pPager) );
3976939795
3977039796
/* Mark the page as dirty. If the page has already been written
3977139797
** to the journal then we can return right away.
3977239798
*/
3977339799
sqlite3PcacheMakeDirty(pPg);
3977439800
if( pageInJournal(pPg) && !subjRequiresPage(pPg) ){
3977539801
assert( !pagerUseWal(pPager) );
39776
- assert( pPager->eState>=PAGER_WRITER_CACHEMOD );
3977739802
}else{
39778
-
39779
- /* If we get this far, it means that the page needs to be
39780
- ** written to the transaction journal or the checkpoint journal
39781
- ** or both.
39782
- **
39783
- ** Higher level routines have already obtained the necessary locks
39784
- ** to begin the write-transaction, but the rollback journal might not
39785
- ** yet be open. Open it now if this is the case.
39786
- */
39787
- if( pPager->eState==PAGER_WRITER_LOCKED ){
39788
- rc = pager_open_journal(pPager);
39789
- if( rc!=SQLITE_OK ) return rc;
39790
- }
39791
- assert( pPager->eState>=PAGER_WRITER_CACHEMOD );
39792
- assert( assert_pager_state(pPager) );
3979339803
3979439804
/* The transaction journal now exists and we have a RESERVED or an
3979539805
** EXCLUSIVE lock on the main database file. Write the current page to
3979639806
** the transaction journal if it is not there already.
3979739807
*/
@@ -43589,11 +43599,11 @@
4358943599
** it sets pWal->hdr.mxFrame to 0. Otherwise, pWal->hdr.mxFrame is left
4359043600
** unchanged.
4359143601
**
4359243602
** SQLITE_OK is returned if no error is encountered (regardless of whether
4359343603
** or not pWal->hdr.mxFrame is modified). An SQLite error code is returned
43594
-** if some error
43604
+** if an error occurs.
4359543605
*/
4359643606
static int walRestartLog(Wal *pWal){
4359743607
int rc = SQLITE_OK;
4359843608
int cnt;
4359943609
@@ -43622,10 +43632,12 @@
4362243632
walIndexWriteHdr(pWal);
4362343633
pInfo->nBackfill = 0;
4362443634
for(i=1; i<WAL_NREADER; i++) pInfo->aReadMark[i] = READMARK_NOT_USED;
4362543635
assert( pInfo->aReadMark[0]==0 );
4362643636
walUnlockExclusive(pWal, WAL_READ_LOCK(1), WAL_NREADER-1);
43637
+ }else if( rc!=SQLITE_BUSY ){
43638
+ return rc;
4362743639
}
4362843640
}
4362943641
walUnlockShared(pWal, WAL_READ_LOCK(0));
4363043642
pWal->readLock = -1;
4363143643
cnt = 0;
@@ -54130,18 +54142,11 @@
5413054142
}else if( pMem->flags & MEM_Int ){
5413154143
return (double)pMem->u.i;
5413254144
}else if( pMem->flags & (MEM_Str|MEM_Blob) ){
5413354145
/* (double)0 In case of SQLITE_OMIT_FLOATING_POINT... */
5413454146
double val = (double)0;
54135
- pMem->flags |= MEM_Str;
54136
- if( sqlite3VdbeChangeEncoding(pMem, SQLITE_UTF8)
54137
- || sqlite3VdbeMemNulTerminate(pMem) ){
54138
- /* (double)0 In case of SQLITE_OMIT_FLOATING_POINT... */
54139
- return (double)0;
54140
- }
54141
- assert( pMem->z );
54142
- sqlite3AtoF(pMem->z, &val, pMem->n, SQLITE_UTF8);
54147
+ sqlite3AtoF(pMem->z, &val, pMem->n, pMem->enc);
5414354148
return val;
5414454149
}else{
5414554150
/* (double)0 In case of SQLITE_OMIT_FLOATING_POINT... */
5414654151
return (double)0;
5414754152
}
@@ -87647,11 +87652,10 @@
8764787652
addr2 = sqlite3VdbeAddOp0(v, OP_Goto);
8764887653
sqlite3VdbeJumpHere(v, addr1);
8764987654
sqlite3VdbeAddOp1(v, OP_Last, pOrderBy->iECursor);
8765087655
sqlite3VdbeAddOp1(v, OP_Delete, pOrderBy->iECursor);
8765187656
sqlite3VdbeJumpHere(v, addr2);
87652
- pSelect->iLimit = 0;
8765387657
}
8765487658
}
8765587659
8765687660
/*
8765787661
** Add code to implement the OFFSET
@@ -87926,15 +87930,15 @@
8792687930
break;
8792787931
}
8792887932
#endif
8792987933
}
8793087934
87931
- /* Jump to the end of the loop if the LIMIT is reached.
87935
+ /* Jump to the end of the loop if the LIMIT is reached. Except, if
87936
+ ** there is a sorter, in which case the sorter has already limited
87937
+ ** the output for us.
8793287938
*/
87933
- if( p->iLimit ){
87934
- assert( pOrderBy==0 ); /* If there is an ORDER BY, the call to
87935
- ** pushOntoSorter() would have cleared p->iLimit */
87939
+ if( pOrderBy==0 && p->iLimit ){
8793687940
sqlite3VdbeAddOp3(v, OP_IfZero, p->iLimit, iBreak, -1);
8793787941
}
8793887942
}
8793987943
8794087944
/*
@@ -88065,14 +88069,10 @@
8806588069
}
8806688070
}
8806788071
sqlite3ReleaseTempReg(pParse, regRow);
8806888072
sqlite3ReleaseTempReg(pParse, regRowid);
8806988073
88070
- /* LIMIT has been implemented by the pushOntoSorter() routine.
88071
- */
88072
- assert( p->iLimit==0 );
88073
-
8807488074
/* The bottom of the loop
8807588075
*/
8807688076
sqlite3VdbeResolveLabel(v, addrContinue);
8807788077
sqlite3VdbeAddOp2(v, OP_Next, iTab, addr);
8807888078
sqlite3VdbeResolveLabel(v, addrBreak);
@@ -89386,11 +89386,10 @@
8938689386
}
8938789387
8938889388
/* Separate the left and the right query from one another
8938989389
*/
8939089390
p->pPrior = 0;
89391
- pPrior->pRightmost = 0;
8939289391
sqlite3ResolveOrderGroupBy(pParse, p, p->pOrderBy, "ORDER");
8939389392
if( pPrior->pPrior==0 ){
8939489393
sqlite3ResolveOrderGroupBy(pParse, pPrior, pPrior->pOrderBy, "ORDER");
8939589394
}
8939689395
8939789396
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -650,11 +650,11 @@
650 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
651 ** [sqlite_version()] and [sqlite_source_id()].
652 */
653 #define SQLITE_VERSION "3.7.3"
654 #define SQLITE_VERSION_NUMBER 3007003
655 #define SQLITE_SOURCE_ID "2010-10-04 23:55:51 ece641eb8951c6314cedbdb3243f91cb199c3239"
656
657 /*
658 ** CAPI3REF: Run-Time Library Version Numbers
659 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
660 **
@@ -26956,16 +26956,26 @@
26956
26957 /* Parameter isDelete is only used on vxworks. Express this explicitly
26958 ** here to prevent compiler warnings about unused parameters.
26959 */
26960 UNUSED_PARAMETER(isDelete);
 
 
 
 
 
 
 
 
 
 
 
26961
26962 OSTRACE(("OPEN %-3d %s\n", h, zFilename));
26963 pNew->h = h;
26964 pNew->dirfd = dirfd;
26965 pNew->fileFlags = 0;
26966 assert( zFilename==0 || zFilename[0]=='/' ); /* Never a relative pathname */
26967 pNew->zPath = zFilename;
26968
26969 #if OS_VXWORKS
26970 pNew->pId = vxworksFindFileId(zFilename);
26971 if( pNew->pId==0 ){
@@ -39764,34 +39774,34 @@
39764 /* Higher-level routines never call this function if database is not
39765 ** writable. But check anyway, just for robustness. */
39766 if( NEVER(pPager->readOnly) ) return SQLITE_PERM;
39767
39768 CHECK_PAGE(pPg);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39769
39770 /* Mark the page as dirty. If the page has already been written
39771 ** to the journal then we can return right away.
39772 */
39773 sqlite3PcacheMakeDirty(pPg);
39774 if( pageInJournal(pPg) && !subjRequiresPage(pPg) ){
39775 assert( !pagerUseWal(pPager) );
39776 assert( pPager->eState>=PAGER_WRITER_CACHEMOD );
39777 }else{
39778
39779 /* If we get this far, it means that the page needs to be
39780 ** written to the transaction journal or the checkpoint journal
39781 ** or both.
39782 **
39783 ** Higher level routines have already obtained the necessary locks
39784 ** to begin the write-transaction, but the rollback journal might not
39785 ** yet be open. Open it now if this is the case.
39786 */
39787 if( pPager->eState==PAGER_WRITER_LOCKED ){
39788 rc = pager_open_journal(pPager);
39789 if( rc!=SQLITE_OK ) return rc;
39790 }
39791 assert( pPager->eState>=PAGER_WRITER_CACHEMOD );
39792 assert( assert_pager_state(pPager) );
39793
39794 /* The transaction journal now exists and we have a RESERVED or an
39795 ** EXCLUSIVE lock on the main database file. Write the current page to
39796 ** the transaction journal if it is not there already.
39797 */
@@ -43589,11 +43599,11 @@
43589 ** it sets pWal->hdr.mxFrame to 0. Otherwise, pWal->hdr.mxFrame is left
43590 ** unchanged.
43591 **
43592 ** SQLITE_OK is returned if no error is encountered (regardless of whether
43593 ** or not pWal->hdr.mxFrame is modified). An SQLite error code is returned
43594 ** if some error
43595 */
43596 static int walRestartLog(Wal *pWal){
43597 int rc = SQLITE_OK;
43598 int cnt;
43599
@@ -43622,10 +43632,12 @@
43622 walIndexWriteHdr(pWal);
43623 pInfo->nBackfill = 0;
43624 for(i=1; i<WAL_NREADER; i++) pInfo->aReadMark[i] = READMARK_NOT_USED;
43625 assert( pInfo->aReadMark[0]==0 );
43626 walUnlockExclusive(pWal, WAL_READ_LOCK(1), WAL_NREADER-1);
 
 
43627 }
43628 }
43629 walUnlockShared(pWal, WAL_READ_LOCK(0));
43630 pWal->readLock = -1;
43631 cnt = 0;
@@ -54130,18 +54142,11 @@
54130 }else if( pMem->flags & MEM_Int ){
54131 return (double)pMem->u.i;
54132 }else if( pMem->flags & (MEM_Str|MEM_Blob) ){
54133 /* (double)0 In case of SQLITE_OMIT_FLOATING_POINT... */
54134 double val = (double)0;
54135 pMem->flags |= MEM_Str;
54136 if( sqlite3VdbeChangeEncoding(pMem, SQLITE_UTF8)
54137 || sqlite3VdbeMemNulTerminate(pMem) ){
54138 /* (double)0 In case of SQLITE_OMIT_FLOATING_POINT... */
54139 return (double)0;
54140 }
54141 assert( pMem->z );
54142 sqlite3AtoF(pMem->z, &val, pMem->n, SQLITE_UTF8);
54143 return val;
54144 }else{
54145 /* (double)0 In case of SQLITE_OMIT_FLOATING_POINT... */
54146 return (double)0;
54147 }
@@ -87647,11 +87652,10 @@
87647 addr2 = sqlite3VdbeAddOp0(v, OP_Goto);
87648 sqlite3VdbeJumpHere(v, addr1);
87649 sqlite3VdbeAddOp1(v, OP_Last, pOrderBy->iECursor);
87650 sqlite3VdbeAddOp1(v, OP_Delete, pOrderBy->iECursor);
87651 sqlite3VdbeJumpHere(v, addr2);
87652 pSelect->iLimit = 0;
87653 }
87654 }
87655
87656 /*
87657 ** Add code to implement the OFFSET
@@ -87926,15 +87930,15 @@
87926 break;
87927 }
87928 #endif
87929 }
87930
87931 /* Jump to the end of the loop if the LIMIT is reached.
 
 
87932 */
87933 if( p->iLimit ){
87934 assert( pOrderBy==0 ); /* If there is an ORDER BY, the call to
87935 ** pushOntoSorter() would have cleared p->iLimit */
87936 sqlite3VdbeAddOp3(v, OP_IfZero, p->iLimit, iBreak, -1);
87937 }
87938 }
87939
87940 /*
@@ -88065,14 +88069,10 @@
88065 }
88066 }
88067 sqlite3ReleaseTempReg(pParse, regRow);
88068 sqlite3ReleaseTempReg(pParse, regRowid);
88069
88070 /* LIMIT has been implemented by the pushOntoSorter() routine.
88071 */
88072 assert( p->iLimit==0 );
88073
88074 /* The bottom of the loop
88075 */
88076 sqlite3VdbeResolveLabel(v, addrContinue);
88077 sqlite3VdbeAddOp2(v, OP_Next, iTab, addr);
88078 sqlite3VdbeResolveLabel(v, addrBreak);
@@ -89386,11 +89386,10 @@
89386 }
89387
89388 /* Separate the left and the right query from one another
89389 */
89390 p->pPrior = 0;
89391 pPrior->pRightmost = 0;
89392 sqlite3ResolveOrderGroupBy(pParse, p, p->pOrderBy, "ORDER");
89393 if( pPrior->pPrior==0 ){
89394 sqlite3ResolveOrderGroupBy(pParse, pPrior, pPrior->pOrderBy, "ORDER");
89395 }
89396
89397
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -650,11 +650,11 @@
650 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
651 ** [sqlite_version()] and [sqlite_source_id()].
652 */
653 #define SQLITE_VERSION "3.7.3"
654 #define SQLITE_VERSION_NUMBER 3007003
655 #define SQLITE_SOURCE_ID "2010-10-07 13:29:13 e55ada89246d4cc5f476891c70572dc7c1c3643e"
656
657 /*
658 ** CAPI3REF: Run-Time Library Version Numbers
659 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
660 **
@@ -26956,16 +26956,26 @@
26956
26957 /* Parameter isDelete is only used on vxworks. Express this explicitly
26958 ** here to prevent compiler warnings about unused parameters.
26959 */
26960 UNUSED_PARAMETER(isDelete);
26961
26962 /* Usually the path zFilename should not be a relative pathname. The
26963 ** exception is when opening the proxy "conch" file in builds that
26964 ** include the special Apple locking styles.
26965 */
26966 #if defined(__APPLE__) && SQLITE_ENABLE_LOCKING_STYLE
26967 assert( zFilename==0 || zFilename[0]=='/'
26968 || pVfs->pAppData==(void*)&autolockIoFinder );
26969 #else
26970 assert( zFilename==0 || zFilename[0]=='/' );
26971 #endif
26972
26973 OSTRACE(("OPEN %-3d %s\n", h, zFilename));
26974 pNew->h = h;
26975 pNew->dirfd = dirfd;
26976 pNew->fileFlags = 0;
 
26977 pNew->zPath = zFilename;
26978
26979 #if OS_VXWORKS
26980 pNew->pId = vxworksFindFileId(zFilename);
26981 if( pNew->pId==0 ){
@@ -39764,34 +39774,34 @@
39774 /* Higher-level routines never call this function if database is not
39775 ** writable. But check anyway, just for robustness. */
39776 if( NEVER(pPager->readOnly) ) return SQLITE_PERM;
39777
39778 CHECK_PAGE(pPg);
39779
39780 /* The journal file needs to be opened. Higher level routines have already
39781 ** obtained the necessary locks to begin the write-transaction, but the
39782 ** rollback journal might not yet be open. Open it now if this is the case.
39783 **
39784 ** This is done before calling sqlite3PcacheMakeDirty() on the page.
39785 ** Otherwise, if it were done after calling sqlite3PcacheMakeDirty(), then
39786 ** an error might occur and the pager would end up in WRITER_LOCKED state
39787 ** with pages marked as dirty in the cache.
39788 */
39789 if( pPager->eState==PAGER_WRITER_LOCKED ){
39790 rc = pager_open_journal(pPager);
39791 if( rc!=SQLITE_OK ) return rc;
39792 }
39793 assert( pPager->eState>=PAGER_WRITER_CACHEMOD );
39794 assert( assert_pager_state(pPager) );
39795
39796 /* Mark the page as dirty. If the page has already been written
39797 ** to the journal then we can return right away.
39798 */
39799 sqlite3PcacheMakeDirty(pPg);
39800 if( pageInJournal(pPg) && !subjRequiresPage(pPg) ){
39801 assert( !pagerUseWal(pPager) );
 
39802 }else{
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39803
39804 /* The transaction journal now exists and we have a RESERVED or an
39805 ** EXCLUSIVE lock on the main database file. Write the current page to
39806 ** the transaction journal if it is not there already.
39807 */
@@ -43589,11 +43599,11 @@
43599 ** it sets pWal->hdr.mxFrame to 0. Otherwise, pWal->hdr.mxFrame is left
43600 ** unchanged.
43601 **
43602 ** SQLITE_OK is returned if no error is encountered (regardless of whether
43603 ** or not pWal->hdr.mxFrame is modified). An SQLite error code is returned
43604 ** if an error occurs.
43605 */
43606 static int walRestartLog(Wal *pWal){
43607 int rc = SQLITE_OK;
43608 int cnt;
43609
@@ -43622,10 +43632,12 @@
43632 walIndexWriteHdr(pWal);
43633 pInfo->nBackfill = 0;
43634 for(i=1; i<WAL_NREADER; i++) pInfo->aReadMark[i] = READMARK_NOT_USED;
43635 assert( pInfo->aReadMark[0]==0 );
43636 walUnlockExclusive(pWal, WAL_READ_LOCK(1), WAL_NREADER-1);
43637 }else if( rc!=SQLITE_BUSY ){
43638 return rc;
43639 }
43640 }
43641 walUnlockShared(pWal, WAL_READ_LOCK(0));
43642 pWal->readLock = -1;
43643 cnt = 0;
@@ -54130,18 +54142,11 @@
54142 }else if( pMem->flags & MEM_Int ){
54143 return (double)pMem->u.i;
54144 }else if( pMem->flags & (MEM_Str|MEM_Blob) ){
54145 /* (double)0 In case of SQLITE_OMIT_FLOATING_POINT... */
54146 double val = (double)0;
54147 sqlite3AtoF(pMem->z, &val, pMem->n, pMem->enc);
 
 
 
 
 
 
 
54148 return val;
54149 }else{
54150 /* (double)0 In case of SQLITE_OMIT_FLOATING_POINT... */
54151 return (double)0;
54152 }
@@ -87647,11 +87652,10 @@
87652 addr2 = sqlite3VdbeAddOp0(v, OP_Goto);
87653 sqlite3VdbeJumpHere(v, addr1);
87654 sqlite3VdbeAddOp1(v, OP_Last, pOrderBy->iECursor);
87655 sqlite3VdbeAddOp1(v, OP_Delete, pOrderBy->iECursor);
87656 sqlite3VdbeJumpHere(v, addr2);
 
87657 }
87658 }
87659
87660 /*
87661 ** Add code to implement the OFFSET
@@ -87926,15 +87930,15 @@
87930 break;
87931 }
87932 #endif
87933 }
87934
87935 /* Jump to the end of the loop if the LIMIT is reached. Except, if
87936 ** there is a sorter, in which case the sorter has already limited
87937 ** the output for us.
87938 */
87939 if( pOrderBy==0 && p->iLimit ){
 
 
87940 sqlite3VdbeAddOp3(v, OP_IfZero, p->iLimit, iBreak, -1);
87941 }
87942 }
87943
87944 /*
@@ -88065,14 +88069,10 @@
88069 }
88070 }
88071 sqlite3ReleaseTempReg(pParse, regRow);
88072 sqlite3ReleaseTempReg(pParse, regRowid);
88073
 
 
 
 
88074 /* The bottom of the loop
88075 */
88076 sqlite3VdbeResolveLabel(v, addrContinue);
88077 sqlite3VdbeAddOp2(v, OP_Next, iTab, addr);
88078 sqlite3VdbeResolveLabel(v, addrBreak);
@@ -89386,11 +89386,10 @@
89386 }
89387
89388 /* Separate the left and the right query from one another
89389 */
89390 p->pPrior = 0;
 
89391 sqlite3ResolveOrderGroupBy(pParse, p, p->pOrderBy, "ORDER");
89392 if( pPrior->pPrior==0 ){
89393 sqlite3ResolveOrderGroupBy(pParse, pPrior, pPrior->pOrderBy, "ORDER");
89394 }
89395
89396
+1 -1
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -107,11 +107,11 @@
107107
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
108108
** [sqlite_version()] and [sqlite_source_id()].
109109
*/
110110
#define SQLITE_VERSION "3.7.3"
111111
#define SQLITE_VERSION_NUMBER 3007003
112
-#define SQLITE_SOURCE_ID "2010-10-04 23:55:51 ece641eb8951c6314cedbdb3243f91cb199c3239"
112
+#define SQLITE_SOURCE_ID "2010-10-07 13:29:13 e55ada89246d4cc5f476891c70572dc7c1c3643e"
113113
114114
/*
115115
** CAPI3REF: Run-Time Library Version Numbers
116116
** KEYWORDS: sqlite3_version, sqlite3_sourceid
117117
**
118118
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -107,11 +107,11 @@
107 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
108 ** [sqlite_version()] and [sqlite_source_id()].
109 */
110 #define SQLITE_VERSION "3.7.3"
111 #define SQLITE_VERSION_NUMBER 3007003
112 #define SQLITE_SOURCE_ID "2010-10-04 23:55:51 ece641eb8951c6314cedbdb3243f91cb199c3239"
113
114 /*
115 ** CAPI3REF: Run-Time Library Version Numbers
116 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
117 **
118
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -107,11 +107,11 @@
107 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
108 ** [sqlite_version()] and [sqlite_source_id()].
109 */
110 #define SQLITE_VERSION "3.7.3"
111 #define SQLITE_VERSION_NUMBER 3007003
112 #define SQLITE_SOURCE_ID "2010-10-07 13:29:13 e55ada89246d4cc5f476891c70572dc7c1c3643e"
113
114 /*
115 ** CAPI3REF: Run-Time Library Version Numbers
116 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
117 **
118

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button