]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Make sure the strftime() date conversions put in leading zeros correctly.
authordrh <drh@noemail.net>
Thu, 29 Mar 2007 17:57:21 +0000 (17:57 +0000)
committerdrh <drh@noemail.net>
Thu, 29 Mar 2007 17:57:21 +0000 (17:57 +0000)
Ticket #2276. (CVS 3749)

FossilOrigin-Name: e853067ec4db3eedfb4adcdd4172de2c55b9ac58

manifest
manifest.uuid
src/date.c
test/date.test

index c6a41c606a6ccbd652b3fb754e7ab854783d8bd4..c2d1ebd93c4292dd0b00e848ec1c36e39e0b3eb4 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Avoid\scalling\sOsDelete()\son\sjournal\sfiles\swhen\sthey\sare\sopened\sfor\stemporary\sdatabases.\sFix\sfor\s#2255.\s(CVS\s3748)
-D 2007-03-29T17:28:15
+C Make\ssure\sthe\sstrftime()\sdate\sconversions\sput\sin\sleading\szeros\scorrectly.\nTicket\s#2276.\s(CVS\s3749)
+D 2007-03-29T17:57:21
 F Makefile.in 2f2c3bf69faf0ae7b8e8af4f94f1986849034530
 F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935
 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@@ -63,7 +63,7 @@ F src/btree.h 540dcbbf83435b77d4b6ef87f909c6cecad4dac9
 F src/build.c ad3374b5409554e504300f77e1fbc6b4c106a57f
 F src/callback.c 31d22b4919c7645cbcbb1591ce2453e8c677c558
 F src/complete.c 7d1a44be8f37de125fcafd3d3a018690b3799675
-F src/date.c 393c73fc027597e008dcd81454544659e978b05c
+F src/date.c c4930ef6afc2e9de12d51f800a8f750fac5ddb42
 F src/delete.c 151d08386bf9c9e7f92f6b9106c71efec2def184
 F src/experimental.c 1b2d1a6cd62ecc39610e97670332ca073c50792b
 F src/expr.c a8740c24af3f39f2d502be1a1c640c96435eaac0
@@ -187,7 +187,7 @@ F test/corrupt2.test 572f8df0303d0ce63ddad5c5c9101a83a345ae46
 F test/crash.test 167eb4652eccbedb199b6f21850346c3f5d779fb
 F test/crash2.test ccc7d5f202aeadc3c13003829e6bb6561129f419
 F test/crashtest1.c 09c1c7d728ccf4feb9e481671e29dda5669bbcc2
-F test/date.test 63cc718e1d209b10c6b7be8ce72b11addb9f1e04
+F test/date.test bc3c390d55744649c086d5a090a1b5f00eab10a9
 F test/default.test 252298e42a680146b1dd64f563b95bdf088d94fb
 F test/delete.test 525a6953bc3978780cae35f3eaf1027cf4ce887d
 F test/delete2.test c06be3806ba804bc8c6f134476816080280b40e3
@@ -446,7 +446,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9
 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
 F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
-P 0b22ce3637f87c453084c5bd994b6b19a0b014c0
-R 2ce4cb24cdac809fb310981214060097
-U danielk1977
-Z 3b8a362b924d1b973dfb32cc84cc10b1
+P e746832f5f3e1c58e6f6456866156824d23dd846
+R b1788f4ccc3dadea73c4b05cf92a2f56
+U drh
+Z 5aae4929118467f5ff5f8ba730683d13
index 8e4bd6329ce8681af70fe075b9619a505a9486c1..54efa6bc6a6fb8fbbcf1901ecef7896c9f902e31 100644 (file)
@@ -1 +1 @@
-e746832f5f3e1c58e6f6456866156824d23dd846
\ No newline at end of file
+e853067ec4db3eedfb4adcdd4172de2c55b9ac58
\ No newline at end of file
index 1a92c4f9e4e440b8f66042ad9f12059204c860e3..f7fdf0d92a471ec2641bf8334958128ef4dc5123 100644 (file)
@@ -16,7 +16,7 @@
 ** sqlite3RegisterDateTimeFunctions() found at the bottom of the file.
 ** All other code has file scope.
 **
-** $Id: date.c,v 1.60 2007/01/08 16:19:07 drh Exp $
+** $Id: date.c,v 1.61 2007/03/29 17:57:21 drh Exp $
 **
 ** NOTES:
 **
@@ -827,7 +827,7 @@ static void strftimeFunc(
         case 'f': {
           double s = x.s;
           if( s>59.999 ) s = 59.999;
-          sqlite3_snprintf(7, &z[j],"%02.3f", s);
+          sqlite3_snprintf(7, &z[j],"%06.3f", s);
           j += strlen(&z[j]);
           break;
         }
index a9efc4008b764cf1ae2d3616f6850984397817d1..07f620b247eb7d34241d68d8a181719f309581b9 100644 (file)
@@ -11,7 +11,7 @@
 # This file implements regression tests for SQLite library.  The
 # focus of this file is testing date and time functions.
 #
-# $Id: date.test,v 1.19 2007/01/08 16:19:07 drh Exp $
+# $Id: date.test,v 1.20 2007/03/29 17:57:21 drh Exp $
 
 set testdir [file dirname $argv0]
 source $testdir/tester.tcl
@@ -150,6 +150,12 @@ datetest 3.16 "strftime('[repeat 200 %Y]','2003-10-31')" [repeat 200 2003]
 datetest 3.17 "strftime('[repeat 200 abc%m123]','2003-10-31')" \
     [repeat 200 abc10123]
 
+# Ticket #2276.  Make sure leading zeros are inserted where appropriate.
+#
+datetest 3.20 \
+   {strftime('%d/%f/%H/%W/%j/%m/%M/%S/%Y','0421-01-02 03:04:05.006')} \
+   02/05.006/03/00/002/01/04/05/0421
+
 set sqlite_current_time 1157124367
 datetest 4.1 {date('now')} {2006-09-01}
 set sqlite_current_time 0