summaryrefslogtreecommitdiff
path: root/libc/misc/time/ctime_r.c
diff options
context:
space:
mode:
Diffstat (limited to 'libc/misc/time/ctime_r.c')
-rw-r--r--libc/misc/time/ctime_r.c24
1 files changed, 4 insertions, 20 deletions
diff --git a/libc/misc/time/ctime_r.c b/libc/misc/time/ctime_r.c
index b608098ae..1b323a258 100644
--- a/libc/misc/time/ctime_r.c
+++ b/libc/misc/time/ctime_r.c
@@ -2,25 +2,9 @@
#include <time.h>
#include <sys/time.h>
-extern void __tm_conv();
-extern void __asctime();
-
-char *ctime_r(timep, buf)
-__const time_t *timep;
-char *buf;
+char * ctime_r(const time_t *t, char *buf)
{
- struct tm tmb;
- struct timezone tz;
- time_t offt;
-
- gettimeofday((void *) 0, &tz);
-
- offt = -tz.tz_minuteswest * 60L;
-
- /* tmb.tm_isdst = ? */
- __tm_conv(&tmb, timep, offt);
-
- __asctime(buf, &tmb);
+ struct tm tm;
+ return asctime_r(localtime_r(t, &tm), buf);
+}
- return buf;
-}