From 4e52a794ba999c0de0a166ae5e8dac2e67b93964 Mon Sep 17 00:00:00 2001 From: Nguyễn Thái Ngọc Duy Date: Wed, 14 Apr 2010 06:56:40 +0200 Subject: win32: add localtime_r() --- include/mingw.h | 2 +- win32/mingw.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/include/mingw.h b/include/mingw.h index a646af334..9bca3cf35 100644 --- a/include/mingw.h +++ b/include/mingw.h @@ -222,7 +222,7 @@ NOIMPL(waitpid,pid_t pid UNUSED_PARAM, int *status UNUSED_PARAM, unsigned option * time.h */ struct tm *gmtime_r(const time_t *timep, struct tm *result); -IMPL(localtime_r,struct tm *,NULL,const time_t *timep UNUSED_PARAM, struct tm *result UNUSED_PARAM); +struct tm *localtime_r(const time_t *timep, struct tm *result); IMPL(strptime,char*,NULL,const char *s UNUSED_PARAM, const char *format UNUSED_PARAM, struct tm *tm UNUSED_PARAM); /* diff --git a/win32/mingw.c b/win32/mingw.c index 1a476651a..9ce7bc3ff 100644 --- a/win32/mingw.c +++ b/win32/mingw.c @@ -69,3 +69,10 @@ struct tm *gmtime_r(const time_t *timep, struct tm *result) memcpy(result, gmtime(timep), sizeof(struct tm)); return result; } + +struct tm *localtime_r(const time_t *timep, struct tm *result) +{ + /* localtime() in MSVCRT.DLL is thread-safe, but not reentrant */ + memcpy(result, localtime(timep), sizeof(struct tm)); + return result; +} -- cgit v1.2.3-55-g6feb