From 34a80e21cfea772d4e0e6966eda074544d2719f3 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 29 May 2001 15:07:41 +0300 Subject: [PATCH] ut0ut.c If localtime_r not available in Unix, use localtime configure.in If localtime_r not available in Unix, use localtime innobase/configure.in: If localtime_r not available in Unix, use localtime innobase/ut/ut0ut.c: If localtime_r not available in Unix, use localtime --- innobase/configure.in | 1 + innobase/ut/ut0ut.c | 18 ++++++++++++------ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/innobase/configure.in b/innobase/configure.in index 1133ab86221..48bb9504219 100644 --- a/innobase/configure.in +++ b/innobase/configure.in @@ -38,6 +38,7 @@ AC_CHECK_HEADERS(aio.h sched.h) AC_CHECK_SIZEOF(int, 4) AC_CHECK_FUNCS(sched_yield) AC_CHECK_FUNCS(fdatasync) +AC_CHECK_FUNCS(localtime_r) #AC_C_INLINE Already checked in MySQL AC_C_BIGENDIAN diff --git a/innobase/ut/ut0ut.c b/innobase/ut/ut0ut.c index 07ee3d2b6fe..1436f6a10a3 100644 --- a/innobase/ut/ut0ut.c +++ b/innobase/ut/ut0ut.c @@ -72,19 +72,25 @@ ut_print_timestamp( #else struct tm cal_tm; + struct tm* cal_tm_ptr; time_t tm; time(&tm); +#ifdef HAVE_LOCALTIME_R localtime_r(&tm, &cal_tm); + cal_tm_ptr = &cal_tm; +#else + cal_tm_ptr = localtime(&tm); +#endif fprintf(file,"%02d%02d%02d %2d:%02d:%02d", - cal_tm.tm_year % 100, - cal_tm.tm_mon+1, - cal_tm.tm_mday, - cal_tm.tm_hour, - cal_tm.tm_min, - cal_tm.tm_sec); + cal_tm_ptr->tm_year % 100, + cal_tm_ptr->tm_mon+1, + cal_tm_ptr->tm_mday, + cal_tm_ptr->tm_hour, + cal_tm_ptr->tm_min, + cal_tm_ptr->tm_sec); #endif }