diff options
| author | Jouni Ahto <jah@php.net> | 1999-11-27 20:51:17 +0000 | 
|---|---|---|
| committer | Jouni Ahto <jah@php.net> | 1999-11-27 20:51:17 +0000 | 
| commit | 3e8303abf0dfab5a93d5109ef0abe8e4c1e55f41 (patch) | |
| tree | 31c5c32865347ce440d266bce0e9abbad909ac9c | |
| parent | 33bdf19051fd8b79c434de5b02ea329ecb03bc76 (diff) | |
| download | php-git-3e8303abf0dfab5a93d5109ef0abe8e4c1e55f41.tar.gz | |
Use thread-safe versions of localtime and gmtime
| -rw-r--r-- | ext/dbase/dbf_misc.c | 4 | ||||
| -rw-r--r-- | ext/standard/parsedate.y | 16 | 
2 files changed, 10 insertions, 10 deletions
| diff --git a/ext/dbase/dbf_misc.c b/ext/dbase/dbf_misc.c index 84573e47a4..fedb0d0f9c 100644 --- a/ext/dbase/dbf_misc.c +++ b/ext/dbase/dbf_misc.c @@ -151,11 +151,11 @@ int db_date_day(char *cp)  char *db_cur_date(char *cp)  { -	struct tm *ctm; +	struct tm *ctm, tmbuf;  	time_t	  c_time;  	c_time = time((time_t *)NULL); -	ctm = localtime(&c_time); +	ctm = localtime_r(&c_time, &tmbuf);  	if (cp == NULL)  		cp = (char *)malloc(9); diff --git a/ext/standard/parsedate.y b/ext/standard/parsedate.y index 513ac73ea6..17b21b3ecd 100644 --- a/ext/standard/parsedate.y +++ b/ext/standard/parsedate.y @@ -533,13 +533,13 @@ int GetTimeInfo(TIMEINFO *Now)  {      static time_t	NextHour;      static long		LastTzone; -    struct tm		*tm; +    struct tm		*tm, tmbuf;      int			secondsUntilNextHour;  #if	defined(HAVE_GETTIMEOFDAY)      struct timeval	tv;  #endif	/* defined(HAVE_GETTIMEOFDAY) */  #if	!defined(HAVE_TM_GMTOFF) -    struct tm		local; +    struct tm		local, tmbuf;      struct tm		gmt;  #endif	/* !defined(HAVE_TM_GMTOFF) */ @@ -557,13 +557,13 @@ int GetTimeInfo(TIMEINFO *Now)      /* Now get the timezone if the last time < HH:00:00 <= now for some HH.  */      if (NextHour <= Now->time) { -	if ((tm = localtime(&Now->time)) == NULL) +	if ((tm = localtime_r(&Now->time, &tmbuf)) == NULL)  	    return -1;  	secondsUntilNextHour = 60 * (60 - tm->tm_min) - tm->tm_sec;  #if	!defined(HAVE_TM_GMTOFF)  	/* To get the timezone, compare localtime with GMT. */  	local = *tm; -	if ((tm = gmtime(&Now->time)) == NULL) +	if ((tm = gmtime_r(&Now->time, &tmbuf)) == NULL)  	    return -1;  	gmt = *tm; @@ -698,11 +698,11 @@ RelativeMonth(Start, RelMonth)      time_t	Start;      time_t	RelMonth;  { -    struct tm	*tm; +    struct tm	*tm, tmbuf;      time_t	Month;      time_t	Year; -    tm = localtime(&Start); +    tm = localtime_r(&Start, &tmbuf);      Month = 12 * tm->tm_year + tm->tm_mon + RelMonth;      Year = Month / 12;      Year += 1900; @@ -868,7 +868,7 @@ static int date_lex(void)  time_t parsedate(char *p, TIMEINFO *now)  {      extern int		date_parse(); -    struct tm		*tm; +    struct tm		*tm, tmbuf;      TIMEINFO		ti;      time_t		Start; @@ -878,7 +878,7 @@ time_t parsedate(char *p, TIMEINFO *now)  		(void)GetTimeInfo(&ti);      } -    tm = localtime(&now->time); +    tm = localtime_r(&now->time, &tmbuf);      yyYear = tm->tm_year + 1900;      yyMonth = tm->tm_mon + 1;      yyDay = tm->tm_mday; | 
