]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix a bug in the deterministic date/time function logic that can only appear
authordrh <drh@noemail.net>
Tue, 25 Jul 2017 01:34:05 +0000 (01:34 +0000)
committerdrh <drh@noemail.net>
Tue, 25 Jul 2017 01:34:05 +0000 (01:34 +0000)
with STAT3 or STAT4.

FossilOrigin-Name: 1ca707a4fb8db7aa85430413164265607ce727fc8a5afc3424b3abfb59921b39

manifest
manifest.uuid
src/vdbeaux.c

index c8525871d6a44eb94f03a6407aae881e891d36cb..0f731b28554d2eb2d72e7d67dfd46a8ea780269a 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Do\snot\sattempt\sto\srun\stest\sfile\sunionvtabfault.test\swith\sSQLITE_OMIT_VIRTUAL_TABLE\sbuilds.
-D 2017-07-24T20:01:36.136
+C Fix\sa\sbug\sin\sthe\sdeterministic\sdate/time\sfunction\slogic\sthat\scan\sonly\sappear\nwith\sSTAT3\sor\sSTAT4.
+D 2017-07-25T01:34:05.482
 F Makefile.in d9873c9925917cca9990ee24be17eb9613a668012c85a343aef7e5536ae266e8
 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
 F Makefile.msc 02b469e9dcd5b7ee63fc1fb05babc174260ee4cfa4e0ef2e48c3c6801567a016
@@ -524,7 +524,7 @@ F src/vdbe.c 1e541ec7ff409bbabcc6b4f154957296fff5827c16c2ab0056348acae75685bf
 F src/vdbe.h d50cadf12bcf9fb99117ef392ce1ea283aa429270481426b6e8b0280c101fd97
 F src/vdbeInt.h 19bd04a4211fe56c712ab35b48be77fd5a0579b851e9dea2cb8deade359b72b9
 F src/vdbeapi.c 52844a5a71712197be45f1c63d730c48a745c7457c959465cfb2b969af40a266
-F src/vdbeaux.c 42e215cc6f69e91eebdd2b886ec1ff2b0d5e44331bd8b88a0a44e78bbeed7133
+F src/vdbeaux.c 3fe68bad02b33b09e08bdc0ad90d6b92b3d571f7864c3d047abca1bde050751c
 F src/vdbeblob.c 359891617358deefc85bef7bcf787fa6b77facb9
 F src/vdbemem.c fe8fce1cdc258320b465934039fe4b1230d63f81d6b81b1eac775b6eec00af0d
 F src/vdbesort.c f512c68d0bf7e0105316a5594c4329358c8ee9cae3b25138df041d97516c0372
@@ -1637,7 +1637,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 9a5a3d60a5c6ce23bbdab5832f706bee8acdc4b1767aeed82b1aceb294f050f7
-R 9d8352e83316f08ec12324f403d928f8
-U dan
-Z 731268f0f0f5770b6b74b815ab7de998
+P 1a632a9a6c85b78abe0351ef91c7478b26299c4c1c269d5796afb1e172084517
+R 8215cf089e6d9a2d7dcbd4ee22b67db3
+U drh
+Z f46d8d102bf3b4a07103f8534020f352
index ef48ae0b052f6cd13bb0ea53fc2e1cf0492e689f..9eb734f9c8fde4bc26989e06cf5e0958457556e8 100644 (file)
@@ -1 +1 @@
-1a632a9a6c85b78abe0351ef91c7478b26299c4c1c269d5796afb1e172084517
\ No newline at end of file
+1ca707a4fb8db7aa85430413164265607ce727fc8a5afc3424b3abfb59921b39
\ No newline at end of file
index ce9e98bb46f2adc1a857c8bbc66045cfcc71de94..7c2bd87ef7f8a5335243c0ab5457ce633bf8a618 100644 (file)
@@ -4593,6 +4593,9 @@ void sqlite3VdbeSetVarmask(Vdbe *v, int iVar){
 ** features such as 'now'.
 */
 int sqlite3NotPureFunc(sqlite3_context *pCtx){
+#ifdef SQLITE_ENABLE_STAT3_OR_STAT4
+  if( pCtx->pVdbe==0 ) return 1;
+#endif
   if( pCtx->pVdbe->aOp[pCtx->iOp].opcode==OP_PureFunc ){
     sqlite3_result_error(pCtx, 
        "non-deterministic function in index expression or CHECK constraint",