Fossil SCM
Update the built-in SQLite to version 3.25.1.
Commit
c5abb962aa356288dfd169c826552949e7cb331cdd3c82b2c69a49af22f5c800
Parent
51da396650d8170…
2 files changed
+16
-8
+3
-3
+16
-8
| --- src/sqlite3.c | ||
| +++ src/sqlite3.c | ||
| @@ -1,8 +1,8 @@ | ||
| 1 | 1 | /****************************************************************************** |
| 2 | 2 | ** This file is an amalgamation of many separate C source files from SQLite |
| 3 | -** version 3.25.0. By combining all the individual C code files into this | |
| 3 | +** version 3.25.1. By combining all the individual C code files into this | |
| 4 | 4 | ** single large file, the entire code can be compiled as a single translation |
| 5 | 5 | ** unit. This allows many compilers to do optimizations that would not be |
| 6 | 6 | ** possible if the files were compiled separately. Performance improvements |
| 7 | 7 | ** of 5% or more are commonly seen when SQLite is compiled as a single |
| 8 | 8 | ** translation unit. |
| @@ -1154,13 +1154,13 @@ | ||
| 1154 | 1154 | ** |
| 1155 | 1155 | ** See also: [sqlite3_libversion()], |
| 1156 | 1156 | ** [sqlite3_libversion_number()], [sqlite3_sourceid()], |
| 1157 | 1157 | ** [sqlite_version()] and [sqlite_source_id()]. |
| 1158 | 1158 | */ |
| 1159 | -#define SQLITE_VERSION "3.25.0" | |
| 1160 | -#define SQLITE_VERSION_NUMBER 3025000 | |
| 1161 | -#define SQLITE_SOURCE_ID "2018-09-15 04:01:47 b63af6c3bd33152742648d5d2e8dc5d5fcbcdd27df409272b6aea00a6f761760" | |
| 1159 | +#define SQLITE_VERSION "3.25.1" | |
| 1160 | +#define SQLITE_VERSION_NUMBER 3025001 | |
| 1161 | +#define SQLITE_SOURCE_ID "2018-09-18 20:20:44 2ac9003de44da7dafa3fbb1915ac5725a9275c86bf2f3b7aa19321bf1460b386" | |
| 1162 | 1162 | |
| 1163 | 1163 | /* |
| 1164 | 1164 | ** CAPI3REF: Run-Time Library Version Numbers |
| 1165 | 1165 | ** KEYWORDS: sqlite3_version sqlite3_sourceid |
| 1166 | 1166 | ** |
| @@ -102203,11 +102203,11 @@ | ||
| 102203 | 102203 | } |
| 102204 | 102204 | if( rc==SQLITE_OK && pStep->zTarget ){ |
| 102205 | 102205 | Table *pTarget = sqlite3LocateTable(pParse, 0, pStep->zTarget, zDb); |
| 102206 | 102206 | if( pTarget==0 ){ |
| 102207 | 102207 | rc = SQLITE_ERROR; |
| 102208 | - }else{ | |
| 102208 | + }else if( SQLITE_OK==(rc = sqlite3ViewGetColumnNames(pParse, pTarget)) ){ | |
| 102209 | 102209 | SrcList sSrc; |
| 102210 | 102210 | memset(&sSrc, 0, sizeof(sSrc)); |
| 102211 | 102211 | sSrc.nSrc = 1; |
| 102212 | 102212 | sSrc.a[0].zName = pStep->zTarget; |
| 102213 | 102213 | sSrc.a[0].pTab = pTarget; |
| @@ -107849,10 +107849,14 @@ | ||
| 107849 | 107849 | ** statement that defines the view. |
| 107850 | 107850 | */ |
| 107851 | 107851 | assert( pTable->pSelect ); |
| 107852 | 107852 | pSel = sqlite3SelectDup(db, pTable->pSelect, 0); |
| 107853 | 107853 | if( pSel ){ |
| 107854 | +#ifndef SQLITE_OMIT_ALTERTABLE | |
| 107855 | + u8 eParseMode = pParse->eParseMode; | |
| 107856 | + pParse->eParseMode = PARSE_MODE_NORMAL; | |
| 107857 | +#endif | |
| 107854 | 107858 | n = pParse->nTab; |
| 107855 | 107859 | sqlite3SrcListAssignCursors(pParse, pSel->pSrc); |
| 107856 | 107860 | pTable->nCol = -1; |
| 107857 | 107861 | db->lookaside.bDisable++; |
| 107858 | 107862 | #ifndef SQLITE_OMIT_AUTHORIZATION |
| @@ -107894,10 +107898,13 @@ | ||
| 107894 | 107898 | nErr++; |
| 107895 | 107899 | } |
| 107896 | 107900 | sqlite3DeleteTable(db, pSelTab); |
| 107897 | 107901 | sqlite3SelectDelete(db, pSel); |
| 107898 | 107902 | db->lookaside.bDisable--; |
| 107903 | +#ifndef SQLITE_OMIT_ALTERTABLE | |
| 107904 | + pParse->eParseMode = eParseMode; | |
| 107905 | +#endif | |
| 107899 | 107906 | } else { |
| 107900 | 107907 | nErr++; |
| 107901 | 107908 | } |
| 107902 | 107909 | pTable->pSchema->schemaFlags |= DB_UnresetViews; |
| 107903 | 107910 | if( db->mallocFailed ){ |
| @@ -129181,10 +129188,11 @@ | ||
| 129181 | 129188 | sqlite3WindowCodeStep(pParse, p, pWInfo, regGosub, addrGosub); |
| 129182 | 129189 | |
| 129183 | 129190 | sqlite3VdbeAddOp2(v, OP_Goto, 0, iBreak); |
| 129184 | 129191 | sqlite3VdbeResolveLabel(v, addrGosub); |
| 129185 | 129192 | VdbeNoopComment((v, "inner-loop subroutine")); |
| 129193 | + sSort.labelOBLopt = 0; | |
| 129186 | 129194 | selectInnerLoop(pParse, p, -1, &sSort, &sDistinct, pDest, iCont, iBreak); |
| 129187 | 129195 | sqlite3VdbeResolveLabel(v, iCont); |
| 129188 | 129196 | sqlite3VdbeAddOp1(v, OP_Return, regGosub); |
| 129189 | 129197 | VdbeComment((v, "end inner-loop subroutine")); |
| 129190 | 129198 | sqlite3VdbeResolveLabel(v, iBreak); |
| @@ -214414,11 +214422,11 @@ | ||
| 214414 | 214422 | int nArg, /* Number of args */ |
| 214415 | 214423 | sqlite3_value **apUnused /* Function arguments */ |
| 214416 | 214424 | ){ |
| 214417 | 214425 | assert( nArg==0 ); |
| 214418 | 214426 | UNUSED_PARAM2(nArg, apUnused); |
| 214419 | - sqlite3_result_text(pCtx, "fts5: 2018-09-15 04:01:47 b63af6c3bd33152742648d5d2e8dc5d5fcbcdd27df409272b6aea00a6f761760", -1, SQLITE_TRANSIENT); | |
| 214427 | + sqlite3_result_text(pCtx, "fts5: 2018-09-18 20:20:44 2ac9003de44da7dafa3fbb1915ac5725a9275c86bf2f3b7aa19321bf1460b386", -1, SQLITE_TRANSIENT); | |
| 214420 | 214428 | } |
| 214421 | 214429 | |
| 214422 | 214430 | static int fts5Init(sqlite3 *db){ |
| 214423 | 214431 | static const sqlite3_module fts5Mod = { |
| 214424 | 214432 | /* iVersion */ 2, |
| @@ -219124,12 +219132,12 @@ | ||
| 219124 | 219132 | } |
| 219125 | 219133 | #endif /* SQLITE_CORE */ |
| 219126 | 219134 | #endif /* !defined(SQLITE_CORE) || defined(SQLITE_ENABLE_STMTVTAB) */ |
| 219127 | 219135 | |
| 219128 | 219136 | /************** End of stmt.c ************************************************/ |
| 219129 | -#if __LINE__!=219129 | |
| 219137 | +#if __LINE__!=219137 | |
| 219130 | 219138 | #undef SQLITE_SOURCE_ID |
| 219131 | -#define SQLITE_SOURCE_ID "2018-09-15 04:01:47 b63af6c3bd33152742648d5d2e8dc5d5fcbcdd27df409272b6aea00a6f76alt2" | |
| 219139 | +#define SQLITE_SOURCE_ID "2018-09-18 20:20:44 2ac9003de44da7dafa3fbb1915ac5725a9275c86bf2f3b7aa19321bf1460alt2" | |
| 219132 | 219140 | #endif |
| 219133 | 219141 | /* Return the source-id for this library */ |
| 219134 | 219142 | SQLITE_API const char *sqlite3_sourceid(void){ return SQLITE_SOURCE_ID; } |
| 219135 | 219143 | /************************** End of sqlite3.c ******************************/ |
| 219136 | 219144 |
| --- src/sqlite3.c | |
| +++ src/sqlite3.c | |
| @@ -1,8 +1,8 @@ | |
| 1 | /****************************************************************************** |
| 2 | ** This file is an amalgamation of many separate C source files from SQLite |
| 3 | ** version 3.25.0. By combining all the individual C code files into this |
| 4 | ** single large file, the entire code can be compiled as a single translation |
| 5 | ** unit. This allows many compilers to do optimizations that would not be |
| 6 | ** possible if the files were compiled separately. Performance improvements |
| 7 | ** of 5% or more are commonly seen when SQLite is compiled as a single |
| 8 | ** translation unit. |
| @@ -1154,13 +1154,13 @@ | |
| 1154 | ** |
| 1155 | ** See also: [sqlite3_libversion()], |
| 1156 | ** [sqlite3_libversion_number()], [sqlite3_sourceid()], |
| 1157 | ** [sqlite_version()] and [sqlite_source_id()]. |
| 1158 | */ |
| 1159 | #define SQLITE_VERSION "3.25.0" |
| 1160 | #define SQLITE_VERSION_NUMBER 3025000 |
| 1161 | #define SQLITE_SOURCE_ID "2018-09-15 04:01:47 b63af6c3bd33152742648d5d2e8dc5d5fcbcdd27df409272b6aea00a6f761760" |
| 1162 | |
| 1163 | /* |
| 1164 | ** CAPI3REF: Run-Time Library Version Numbers |
| 1165 | ** KEYWORDS: sqlite3_version sqlite3_sourceid |
| 1166 | ** |
| @@ -102203,11 +102203,11 @@ | |
| 102203 | } |
| 102204 | if( rc==SQLITE_OK && pStep->zTarget ){ |
| 102205 | Table *pTarget = sqlite3LocateTable(pParse, 0, pStep->zTarget, zDb); |
| 102206 | if( pTarget==0 ){ |
| 102207 | rc = SQLITE_ERROR; |
| 102208 | }else{ |
| 102209 | SrcList sSrc; |
| 102210 | memset(&sSrc, 0, sizeof(sSrc)); |
| 102211 | sSrc.nSrc = 1; |
| 102212 | sSrc.a[0].zName = pStep->zTarget; |
| 102213 | sSrc.a[0].pTab = pTarget; |
| @@ -107849,10 +107849,14 @@ | |
| 107849 | ** statement that defines the view. |
| 107850 | */ |
| 107851 | assert( pTable->pSelect ); |
| 107852 | pSel = sqlite3SelectDup(db, pTable->pSelect, 0); |
| 107853 | if( pSel ){ |
| 107854 | n = pParse->nTab; |
| 107855 | sqlite3SrcListAssignCursors(pParse, pSel->pSrc); |
| 107856 | pTable->nCol = -1; |
| 107857 | db->lookaside.bDisable++; |
| 107858 | #ifndef SQLITE_OMIT_AUTHORIZATION |
| @@ -107894,10 +107898,13 @@ | |
| 107894 | nErr++; |
| 107895 | } |
| 107896 | sqlite3DeleteTable(db, pSelTab); |
| 107897 | sqlite3SelectDelete(db, pSel); |
| 107898 | db->lookaside.bDisable--; |
| 107899 | } else { |
| 107900 | nErr++; |
| 107901 | } |
| 107902 | pTable->pSchema->schemaFlags |= DB_UnresetViews; |
| 107903 | if( db->mallocFailed ){ |
| @@ -129181,10 +129188,11 @@ | |
| 129181 | sqlite3WindowCodeStep(pParse, p, pWInfo, regGosub, addrGosub); |
| 129182 | |
| 129183 | sqlite3VdbeAddOp2(v, OP_Goto, 0, iBreak); |
| 129184 | sqlite3VdbeResolveLabel(v, addrGosub); |
| 129185 | VdbeNoopComment((v, "inner-loop subroutine")); |
| 129186 | selectInnerLoop(pParse, p, -1, &sSort, &sDistinct, pDest, iCont, iBreak); |
| 129187 | sqlite3VdbeResolveLabel(v, iCont); |
| 129188 | sqlite3VdbeAddOp1(v, OP_Return, regGosub); |
| 129189 | VdbeComment((v, "end inner-loop subroutine")); |
| 129190 | sqlite3VdbeResolveLabel(v, iBreak); |
| @@ -214414,11 +214422,11 @@ | |
| 214414 | int nArg, /* Number of args */ |
| 214415 | sqlite3_value **apUnused /* Function arguments */ |
| 214416 | ){ |
| 214417 | assert( nArg==0 ); |
| 214418 | UNUSED_PARAM2(nArg, apUnused); |
| 214419 | sqlite3_result_text(pCtx, "fts5: 2018-09-15 04:01:47 b63af6c3bd33152742648d5d2e8dc5d5fcbcdd27df409272b6aea00a6f761760", -1, SQLITE_TRANSIENT); |
| 214420 | } |
| 214421 | |
| 214422 | static int fts5Init(sqlite3 *db){ |
| 214423 | static const sqlite3_module fts5Mod = { |
| 214424 | /* iVersion */ 2, |
| @@ -219124,12 +219132,12 @@ | |
| 219124 | } |
| 219125 | #endif /* SQLITE_CORE */ |
| 219126 | #endif /* !defined(SQLITE_CORE) || defined(SQLITE_ENABLE_STMTVTAB) */ |
| 219127 | |
| 219128 | /************** End of stmt.c ************************************************/ |
| 219129 | #if __LINE__!=219129 |
| 219130 | #undef SQLITE_SOURCE_ID |
| 219131 | #define SQLITE_SOURCE_ID "2018-09-15 04:01:47 b63af6c3bd33152742648d5d2e8dc5d5fcbcdd27df409272b6aea00a6f76alt2" |
| 219132 | #endif |
| 219133 | /* Return the source-id for this library */ |
| 219134 | SQLITE_API const char *sqlite3_sourceid(void){ return SQLITE_SOURCE_ID; } |
| 219135 | /************************** End of sqlite3.c ******************************/ |
| 219136 |
| --- src/sqlite3.c | |
| +++ src/sqlite3.c | |
| @@ -1,8 +1,8 @@ | |
| 1 | /****************************************************************************** |
| 2 | ** This file is an amalgamation of many separate C source files from SQLite |
| 3 | ** version 3.25.1. By combining all the individual C code files into this |
| 4 | ** single large file, the entire code can be compiled as a single translation |
| 5 | ** unit. This allows many compilers to do optimizations that would not be |
| 6 | ** possible if the files were compiled separately. Performance improvements |
| 7 | ** of 5% or more are commonly seen when SQLite is compiled as a single |
| 8 | ** translation unit. |
| @@ -1154,13 +1154,13 @@ | |
| 1154 | ** |
| 1155 | ** See also: [sqlite3_libversion()], |
| 1156 | ** [sqlite3_libversion_number()], [sqlite3_sourceid()], |
| 1157 | ** [sqlite_version()] and [sqlite_source_id()]. |
| 1158 | */ |
| 1159 | #define SQLITE_VERSION "3.25.1" |
| 1160 | #define SQLITE_VERSION_NUMBER 3025001 |
| 1161 | #define SQLITE_SOURCE_ID "2018-09-18 20:20:44 2ac9003de44da7dafa3fbb1915ac5725a9275c86bf2f3b7aa19321bf1460b386" |
| 1162 | |
| 1163 | /* |
| 1164 | ** CAPI3REF: Run-Time Library Version Numbers |
| 1165 | ** KEYWORDS: sqlite3_version sqlite3_sourceid |
| 1166 | ** |
| @@ -102203,11 +102203,11 @@ | |
| 102203 | } |
| 102204 | if( rc==SQLITE_OK && pStep->zTarget ){ |
| 102205 | Table *pTarget = sqlite3LocateTable(pParse, 0, pStep->zTarget, zDb); |
| 102206 | if( pTarget==0 ){ |
| 102207 | rc = SQLITE_ERROR; |
| 102208 | }else if( SQLITE_OK==(rc = sqlite3ViewGetColumnNames(pParse, pTarget)) ){ |
| 102209 | SrcList sSrc; |
| 102210 | memset(&sSrc, 0, sizeof(sSrc)); |
| 102211 | sSrc.nSrc = 1; |
| 102212 | sSrc.a[0].zName = pStep->zTarget; |
| 102213 | sSrc.a[0].pTab = pTarget; |
| @@ -107849,10 +107849,14 @@ | |
| 107849 | ** statement that defines the view. |
| 107850 | */ |
| 107851 | assert( pTable->pSelect ); |
| 107852 | pSel = sqlite3SelectDup(db, pTable->pSelect, 0); |
| 107853 | if( pSel ){ |
| 107854 | #ifndef SQLITE_OMIT_ALTERTABLE |
| 107855 | u8 eParseMode = pParse->eParseMode; |
| 107856 | pParse->eParseMode = PARSE_MODE_NORMAL; |
| 107857 | #endif |
| 107858 | n = pParse->nTab; |
| 107859 | sqlite3SrcListAssignCursors(pParse, pSel->pSrc); |
| 107860 | pTable->nCol = -1; |
| 107861 | db->lookaside.bDisable++; |
| 107862 | #ifndef SQLITE_OMIT_AUTHORIZATION |
| @@ -107894,10 +107898,13 @@ | |
| 107898 | nErr++; |
| 107899 | } |
| 107900 | sqlite3DeleteTable(db, pSelTab); |
| 107901 | sqlite3SelectDelete(db, pSel); |
| 107902 | db->lookaside.bDisable--; |
| 107903 | #ifndef SQLITE_OMIT_ALTERTABLE |
| 107904 | pParse->eParseMode = eParseMode; |
| 107905 | #endif |
| 107906 | } else { |
| 107907 | nErr++; |
| 107908 | } |
| 107909 | pTable->pSchema->schemaFlags |= DB_UnresetViews; |
| 107910 | if( db->mallocFailed ){ |
| @@ -129181,10 +129188,11 @@ | |
| 129188 | sqlite3WindowCodeStep(pParse, p, pWInfo, regGosub, addrGosub); |
| 129189 | |
| 129190 | sqlite3VdbeAddOp2(v, OP_Goto, 0, iBreak); |
| 129191 | sqlite3VdbeResolveLabel(v, addrGosub); |
| 129192 | VdbeNoopComment((v, "inner-loop subroutine")); |
| 129193 | sSort.labelOBLopt = 0; |
| 129194 | selectInnerLoop(pParse, p, -1, &sSort, &sDistinct, pDest, iCont, iBreak); |
| 129195 | sqlite3VdbeResolveLabel(v, iCont); |
| 129196 | sqlite3VdbeAddOp1(v, OP_Return, regGosub); |
| 129197 | VdbeComment((v, "end inner-loop subroutine")); |
| 129198 | sqlite3VdbeResolveLabel(v, iBreak); |
| @@ -214414,11 +214422,11 @@ | |
| 214422 | int nArg, /* Number of args */ |
| 214423 | sqlite3_value **apUnused /* Function arguments */ |
| 214424 | ){ |
| 214425 | assert( nArg==0 ); |
| 214426 | UNUSED_PARAM2(nArg, apUnused); |
| 214427 | sqlite3_result_text(pCtx, "fts5: 2018-09-18 20:20:44 2ac9003de44da7dafa3fbb1915ac5725a9275c86bf2f3b7aa19321bf1460b386", -1, SQLITE_TRANSIENT); |
| 214428 | } |
| 214429 | |
| 214430 | static int fts5Init(sqlite3 *db){ |
| 214431 | static const sqlite3_module fts5Mod = { |
| 214432 | /* iVersion */ 2, |
| @@ -219124,12 +219132,12 @@ | |
| 219132 | } |
| 219133 | #endif /* SQLITE_CORE */ |
| 219134 | #endif /* !defined(SQLITE_CORE) || defined(SQLITE_ENABLE_STMTVTAB) */ |
| 219135 | |
| 219136 | /************** End of stmt.c ************************************************/ |
| 219137 | #if __LINE__!=219137 |
| 219138 | #undef SQLITE_SOURCE_ID |
| 219139 | #define SQLITE_SOURCE_ID "2018-09-18 20:20:44 2ac9003de44da7dafa3fbb1915ac5725a9275c86bf2f3b7aa19321bf1460alt2" |
| 219140 | #endif |
| 219141 | /* Return the source-id for this library */ |
| 219142 | SQLITE_API const char *sqlite3_sourceid(void){ return SQLITE_SOURCE_ID; } |
| 219143 | /************************** End of sqlite3.c ******************************/ |
| 219144 |
+3
-3
| --- src/sqlite3.h | ||
| +++ src/sqlite3.h | ||
| @@ -121,13 +121,13 @@ | ||
| 121 | 121 | ** |
| 122 | 122 | ** See also: [sqlite3_libversion()], |
| 123 | 123 | ** [sqlite3_libversion_number()], [sqlite3_sourceid()], |
| 124 | 124 | ** [sqlite_version()] and [sqlite_source_id()]. |
| 125 | 125 | */ |
| 126 | -#define SQLITE_VERSION "3.25.0" | |
| 127 | -#define SQLITE_VERSION_NUMBER 3025000 | |
| 128 | -#define SQLITE_SOURCE_ID "2018-09-15 04:01:47 b63af6c3bd33152742648d5d2e8dc5d5fcbcdd27df409272b6aea00a6f761760" | |
| 126 | +#define SQLITE_VERSION "3.25.1" | |
| 127 | +#define SQLITE_VERSION_NUMBER 3025001 | |
| 128 | +#define SQLITE_SOURCE_ID "2018-09-18 20:20:44 2ac9003de44da7dafa3fbb1915ac5725a9275c86bf2f3b7aa19321bf1460b386" | |
| 129 | 129 | |
| 130 | 130 | /* |
| 131 | 131 | ** CAPI3REF: Run-Time Library Version Numbers |
| 132 | 132 | ** KEYWORDS: sqlite3_version sqlite3_sourceid |
| 133 | 133 | ** |
| 134 | 134 |
| --- src/sqlite3.h | |
| +++ src/sqlite3.h | |
| @@ -121,13 +121,13 @@ | |
| 121 | ** |
| 122 | ** See also: [sqlite3_libversion()], |
| 123 | ** [sqlite3_libversion_number()], [sqlite3_sourceid()], |
| 124 | ** [sqlite_version()] and [sqlite_source_id()]. |
| 125 | */ |
| 126 | #define SQLITE_VERSION "3.25.0" |
| 127 | #define SQLITE_VERSION_NUMBER 3025000 |
| 128 | #define SQLITE_SOURCE_ID "2018-09-15 04:01:47 b63af6c3bd33152742648d5d2e8dc5d5fcbcdd27df409272b6aea00a6f761760" |
| 129 | |
| 130 | /* |
| 131 | ** CAPI3REF: Run-Time Library Version Numbers |
| 132 | ** KEYWORDS: sqlite3_version sqlite3_sourceid |
| 133 | ** |
| 134 |
| --- src/sqlite3.h | |
| +++ src/sqlite3.h | |
| @@ -121,13 +121,13 @@ | |
| 121 | ** |
| 122 | ** See also: [sqlite3_libversion()], |
| 123 | ** [sqlite3_libversion_number()], [sqlite3_sourceid()], |
| 124 | ** [sqlite_version()] and [sqlite_source_id()]. |
| 125 | */ |
| 126 | #define SQLITE_VERSION "3.25.1" |
| 127 | #define SQLITE_VERSION_NUMBER 3025001 |
| 128 | #define SQLITE_SOURCE_ID "2018-09-18 20:20:44 2ac9003de44da7dafa3fbb1915ac5725a9275c86bf2f3b7aa19321bf1460b386" |
| 129 | |
| 130 | /* |
| 131 | ** CAPI3REF: Run-Time Library Version Numbers |
| 132 | ** KEYWORDS: sqlite3_version sqlite3_sourceid |
| 133 | ** |
| 134 |