From 0d5bfe883e95038be1efff4b72b45122dc1fec9d Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Fri, 1 Feb 2002 11:11:26 +0000 Subject: Andreas Damm made getdate use gmtime_r if available --- lib/getdate.y | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'lib/getdate.y') diff --git a/lib/getdate.y b/lib/getdate.y index cf5f920db..e63eb6e0b 100644 --- a/lib/getdate.y +++ b/lib/getdate.y @@ -211,7 +211,7 @@ typedef struct _CONTEXT { %expect 13 /* turn global variables into locals, additionally enable extra arguments -** for yylex (pointer to yylval and use defined value) +** for yylex (pointer to yylval and user defined value) */ %pure_parser @@ -1058,7 +1058,14 @@ curl_getdate (const char *p, const time_t *now) if (cookie.yyHaveZone) { long delta; - struct tm *gmt = gmtime (&Start); + struct tm *gmt; +#ifdef HAVE_GMTIME_R + /* thread-safe version */ + struct tm keeptime; + gmt = (struct tm *)gmtime_r(&Start, &keeptime); +#else + gmt = gmtime(&Start); +#endif if (!gmt) return -1; delta = cookie.yyTimezone * 60L + difftm (&tm, gmt); -- cgit v1.2.3