diff --git a/newlib/ChangeLog b/newlib/ChangeLog index 2337ca661..628d2bfd8 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,8 @@ +2003-01-14 Christopher Faylor + + * libc/time/strftime.c (strftime): Add '%h' and '%l, %k' GNU + extensions. + 2003-01-08 Richard Sandiford * configure.host (mips64vr-elf, mips64vrel-elf): New config. diff --git a/newlib/libc/time/strftime.c b/newlib/libc/time/strftime.c index 9c115b62d..9084d9ffb 100644 --- a/newlib/libc/time/strftime.c +++ b/newlib/libc/time/strftime.c @@ -209,6 +209,7 @@ _DEFUN (strftime, (s, maxsize, format, tim_p), } break; case 'b': + case 'h': for (i = 0; i < 3; i++) { if (count < maxsize - 1) @@ -271,9 +272,10 @@ _DEFUN (strftime, (s, maxsize, format, tim_p), return 0; break; case 'H': + case 'k': if (count < maxsize - 2) { - sprintf (&s[count], "%2.2d", + sprintf (&s[count], *format == 'k' ? "%2d" : "%2.2d", tim_p->tm_hour); count += 2; } @@ -281,6 +283,7 @@ _DEFUN (strftime, (s, maxsize, format, tim_p), return 0; break; case 'I': + case 'l': if (count < maxsize - 2) { if (tim_p->tm_hour == 0 || @@ -291,7 +294,7 @@ _DEFUN (strftime, (s, maxsize, format, tim_p), } else { - sprintf (&s[count], "%.2d", + sprintf (&s[count], (*format == 'I') ? "%.2d" : "%2d", tim_p->tm_hour % 12); count += 2; }