From: Piotr Caban piotr@codeweavers.com
--- dlls/msvcrt/time.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/dlls/msvcrt/time.c b/dlls/msvcrt/time.c index 5b3698357c2..155454c5659 100644 --- a/dlls/msvcrt/time.c +++ b/dlls/msvcrt/time.c @@ -1761,7 +1761,8 @@ char * CDECL _ctime32(const __time32_t *time) */ errno_t CDECL _ctime32_s(char *res, size_t len, const __time32_t *time) { - struct tm *t; + struct tm t; + int ret;
if (!MSVCRT_CHECK_PMT( res != NULL )) return EINVAL; if (!MSVCRT_CHECK_PMT( len >= 26 )) return EINVAL; @@ -1769,9 +1770,10 @@ errno_t CDECL _ctime32_s(char *res, size_t len, const __time32_t *time) if (!MSVCRT_CHECK_PMT( time != NULL )) return EINVAL; if (!MSVCRT_CHECK_PMT( *time > 0 )) return EINVAL;
- t = _localtime32( time ); - strcpy( res, asctime( t ) ); - return 0; + ret = _localtime32_s( &t, time ); + if (ret) + return ret; + return asctime_s( res, len, &t ); }
/*********************************************************************