Paul Eggert <[EMAIL PROTECTED]> wrote: > 2005-09-13 Paul Eggert <[EMAIL PROTECTED]> > > * NEWS: date has a new --rfc-3339 option, and the old --iso-8601 > option is deprecated. date and ls also have new time format > specifiers %:z, %::z, %:::z.
So my threat of incoming fprintftime changes motivated you, Eh? You got yours in first, so now *I* get to do the merge :-) But it wasn't too bad, and it turned up a bug. BTW, I don't like the fact that the new %:z formats zero-fill by default, when used with a wider field width, but I've left it as-is, for now. 2005-09-14 Jim Meyering <[EMAIL PROTECTED]> * strftime.c (my_strftime): Parse the colons of %:::z *after* the optional field width, not before, so we accept %9:z, not %:9z. 2005-09-14 Jim Meyering <[EMAIL PROTECTED]> * tests/misc/date (tz-5w, tz-5wf): Test new %:z format with a field width. Index: lib/strftime.c =================================================================== RCS file: /fetish/cu/lib/strftime.c,v retrieving revision 1.89 retrieving revision 1.90 diff -u -p -u -r1.89 -r1.90 --- lib/strftime.c 14 Sep 2005 06:58:08 -0000 1.89 +++ lib/strftime.c 14 Sep 2005 10:02:54 -0000 1.90 @@ -596,11 +596,6 @@ my_strftime (CHAR_T *s, size_t maxsize, pad = *f; continue; - /* This influences the %z format. */ - case L_(':'): - colons++; - continue; - /* This changes textual output. */ case L_('^'): to_uppcase = true; @@ -648,6 +643,19 @@ my_strftime (CHAR_T *s, size_t maxsize, break; } + /* Parse the colons of %:::z *after* the optional field width, + not before, so we accept %9:z, not %:9z. */ + { + const CHAR_T *q; + for (q = f; *q == ':' && q - f < 3; q++) + ; /* empty */ + if (*q == 'z') + { + colons = q - f; + f = q; + } + } + /* Now do the specified format. */ format_char = *f; switch (format_char) Index: tests/misc/date =================================================================== RCS file: /fetish/cu/tests/misc/date,v retrieving revision 1.14 retrieving revision 1.15 diff -u -p -u -r1.14 -r1.15 --- tests/misc/date 14 Sep 2005 06:58:44 -0000 1.14 +++ tests/misc/date 14 Sep 2005 09:54:15 -0000 1.15 @@ -193,6 +193,11 @@ my @Tests = ['tz-5', '+%:z', {OUT=>"-00:01"}, {ENV=>'TZ=XXX0:01'}], + # Accept %:z with a field width before the `:'. + ['tz-5w','+%8:z', {OUT=>"-0000:01"}, {ENV=>'TZ=XXX0:01'}], + # Don't recognize %:z with a field width between the `:' and the `z'. + ['tz-5wf', '+%:8z', {OUT=>"%:8z"}, {ENV=>'TZ=XXX0:01'}], + ['ns-relative', '--iso=ns', "-d'1970-01-01 00:00:00.1234567 UTC +961062237.987654321 sec'", {OUT=>"2000-06-15T09:43:58,111111021+0000"}], _______________________________________________ Bug-coreutils mailing list Bug-coreutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-coreutils