From: drh Date: Thu, 12 Mar 2015 23:48:27 +0000 (+0000) Subject: Fix the "now" option for date-time functions for cases when STAT4 is disabled. X-Git-Tag: version-3.8.9~80 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3df79a9a1fa48c78b0a5d621791de6ad51c46701;p=thirdparty%2Fsqlite.git Fix the "now" option for date-time functions for cases when STAT4 is disabled. FossilOrigin-Name: 3ac1f6a3cf1a8fd3ab1ca96b2564c13c4b8d2234 --- diff --git a/manifest b/manifest index 3fe0a0e7b9..b5061eb40e 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C When\sSTAT4\sis\senabled,\sallow\sprobes\sof\sthe\sSTAT4\stable\susing\sthe\svalue\nof\sconstant\sfunctions\scomputed\sat\scompile-time. -D 2015-03-12T21:22:08.630 +C Fix\sthe\s"now"\soption\sfor\sdate-time\sfunctions\sfor\scases\swhen\sSTAT4\sis\sdisabled. +D 2015-03-12T23:48:27.096 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 88a3e6261286db378fdffa1124cad11b3c05f5bb F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -296,7 +296,7 @@ F src/vacuum.c 9460b9de7b2d4e34b0d374894aa6c8a0632be8ec F src/vdbe.c a2725107658fd9572637e8e09d46dcfe851edb96 F src/vdbe.h 6fc69d9c5e146302c56e163cb4b31d1ee64a18c3 F src/vdbeInt.h bb56fd199d8af1a2c1b9639ee2f70724b4338e3a -F src/vdbeapi.c 1295402cabda4473ddee24955c8f7039514497e4 +F src/vdbeapi.c 583d56b129dd27f12bed518270de9ebe521e6a75 F src/vdbeaux.c 97911edb61074b871ec4aa2d6bb779071643dee5 F src/vdbeblob.c 4f2e8e075d238392df98c5e03a64342465b03f90 F src/vdbemem.c d52fa9f3bcf75d27d7b7846d81ee7898829c763d @@ -448,7 +448,7 @@ F test/crashtest1.c 09c1c7d728ccf4feb9e481671e29dda5669bbcc2 F test/createtab.test b5de160630b209c4b8925bdcbbaf48cc90b67fe8 F test/cse.test 277350a26264495e86b1785f34d2d0c8600e021c F test/ctime.test 7bd009071e242aac4f18521581536b652b789a47 -F test/date.test 42973251b9429f2c41b77eb98a7b0b0ba2d3b2c0 +F test/date.test 6b7c1261805155be2c6a3ee073529ff75bc773f0 F test/dbstatus.test 8de104bb5606f19537d23cd553b41349b5ab1204 F test/dbstatus2.test 10418e62b3db5dca070f0c3eef3ea13946f339c2 F test/default.test 0cb49b1c315a0d81c81d775e407f66906a2a604d @@ -1243,8 +1243,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P b8684df395b5585a9428417c2bfd076515560f19 a991bb1a9eb54bdbd45bd623e8b304bdfeb481a3 -R 8dac3425ac00e8cb91887f6600a4a803 -T +closed a991bb1a9eb54bdbd45bd623e8b304bdfeb481a3 +P 0f250957cd82be63e44eb99be6cc10760f4fdfc4 +R d3144e9ce0f6932ade646e074c4a6fee U drh -Z f8e2642fd9bb84da1db25f0a4d97336b +Z 40daa56c14064d43d4b007995d358cfd diff --git a/manifest.uuid b/manifest.uuid index 062ef8e236..d23e56ec10 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -0f250957cd82be63e44eb99be6cc10760f4fdfc4 \ No newline at end of file +3ac1f6a3cf1a8fd3ab1ca96b2564c13c4b8d2234 \ No newline at end of file diff --git a/src/vdbeapi.c b/src/vdbeapi.c index ae53d93006..e03640dfbd 100644 --- a/src/vdbeapi.c +++ b/src/vdbeapi.c @@ -641,15 +641,14 @@ sqlite3 *sqlite3_context_db_handle(sqlite3_context *p){ */ sqlite3_int64 sqlite3StmtCurrentTime(sqlite3_context *p){ int rc; - sqlite3_int64 iTime = 0; #ifndef SQLITE_ENABLE_STAT3_OR_STAT4 - sqlite3_int64 *piTime = &iTime; + sqlite3_int64 *piTime = &p->pVdbe->iCurrentTime; assert( p->pVdbe!=0 ); #else + sqlite3_int64 iTime = 0; sqlite3_int64 *piTime = p->pVdbe!=0 ? &p->pVdbe->iCurrentTime : &iTime; - if( *piTime==0 ) #endif - { + if( *piTime==0 ){ rc = sqlite3OsCurrentTimeInt64(p->pOut->db->pVfs, piTime); if( rc ) *piTime = 0; } diff --git a/test/date.test b/test/date.test index b1d1c677c1..51c8ff378b 100644 --- a/test/date.test +++ b/test/date.test @@ -540,7 +540,7 @@ proc sleeper {} {after 100} do_test date-15.1 { db func sleeper sleeper db eval { - SELECT c - a FROM (SELECT julianday('now') AS a, + SELECT c, a, c - a FROM (SELECT julianday('now') AS a, sleeper(), julianday('now') AS c); } } {0.0}