From: Rich Felker Date: Wed, 21 Jun 2017 00:31:35 +0000 (-0400) Subject: handle errors from localtime_r in ctime_r X-Git-Tag: v1.1.17~54 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=64f855874c32e192382df69f4765a7e32057a005;p=oweals%2Fmusl.git handle errors from localtime_r in ctime_r POSIX requires ctime_r return a null pointer on failure, which can occur if the input time_t value is not representable in broken down form. based on patch by Alexander Monakov. --- diff --git a/src/time/ctime_r.c b/src/time/ctime_r.c index d2260a16..3e24aa68 100644 --- a/src/time/ctime_r.c +++ b/src/time/ctime_r.c @@ -2,7 +2,6 @@ char *ctime_r(const time_t *t, char *buf) { - struct tm tm; - localtime_r(t, &tm); - return asctime_r(&tm, buf); + struct tm tm, *tm_p = localtime_r(t, &tm); + return tm_p ? asctime_r(tm_p, buf) : 0; }