From b2d71bf03b2da32a922d9d80d538e4bc1db4ffc5 Mon Sep 17 00:00:00 2001 From: jjohnstn Date: Fri, 18 Nov 2005 19:00:29 +0000 Subject: [PATCH] 2005-11-18 Jeff Johnston * libc/time/strptime.c (strptime): Don't abort for %c and %Z. Treat %c as "%a %b %e %H:%M:%S %Y" and ignore %Z. --- newlib/ChangeLog | 5 +++++ newlib/libc/time/strptime.c | 11 ++++++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/newlib/ChangeLog b/newlib/ChangeLog index 74e5111fbc..e0c6617422 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,8 @@ +2005-11-18 Jeff Johnston + + * libc/time/strptime.c (strptime): Don't abort for %c and %Z. + Treat %c as "%a %b %e %H:%M:%S %Y" and ignore %Z. + 2005-11-18 Christopher Faylor * include/sys/time.h: Move more cygwin stuff to cygwin-specific header. diff --git a/newlib/libc/time/strptime.c b/newlib/libc/time/strptime.c index 1d625d61e6..1277724603 100644 --- a/newlib/libc/time/strptime.c +++ b/newlib/libc/time/strptime.c @@ -249,8 +249,12 @@ _DEFUN (strptime, (buf, format, timeptr), timeptr->tm_year = (ret * 100) - tm_year_base; buf = s; break; - case 'c' : - abort (); + case 'c' : /* %a %b %e %H:%M:%S %Y */ + s = strptime (buf, "%a %b %e %H:%M:%S %Y", timeptr); + if (s == NULL) + return NULL; + buf = s; + break; case 'D' : /* %m/%d/%y */ s = strptime (buf, "%m/%d/%y", timeptr); if (s == NULL) @@ -412,7 +416,8 @@ _DEFUN (strptime, (buf, format, timeptr), buf = s; break; case 'Z' : - abort (); + /* Unsupported. Just ignore. */ + break; case '\0' : --format; /* FALLTHROUGH */ -- 2.11.0