diff options
author | Allen Byrne <byrn@hdfgroup.org> | 2015-10-27 15:22:09 (GMT) |
---|---|---|
committer | Allen Byrne <byrn@hdfgroup.org> | 2015-10-27 15:22:09 (GMT) |
commit | 3537b69b5b57ac476bec26dd84be88a7c14123b3 (patch) | |
tree | 35bc6a430ceb18e954308b6f0fb727323d931801 /src | |
parent | 8e179b17aadbf8e011e59224270920878499dfa1 (diff) | |
download | hdf5-3537b69b5b57ac476bec26dd84be88a7c14123b3.zip hdf5-3537b69b5b57ac476bec26dd84be88a7c14123b3.tar.gz hdf5-3537b69b5b57ac476bec26dd84be88a7c14123b3.tar.bz2 |
[svn-r28236] Rework get timezone function to add another exclusion define (H5_HAVA_TM_GMTOFF).
Also needed to add prototype - followed lead of HDrand.
Tested linux and windows
Diffstat (limited to 'src')
-rw-r--r-- | src/H5Omtime.c | 2 | ||||
-rw-r--r-- | src/H5private.h | 12 | ||||
-rw-r--r-- | src/H5system.c | 8 |
3 files changed, 17 insertions, 5 deletions
diff --git a/src/H5Omtime.c b/src/H5Omtime.c index d8c5305..272e54a 100644 --- a/src/H5Omtime.c +++ b/src/H5Omtime.c @@ -226,7 +226,7 @@ H5O_mtime_decode(H5F_t H5_ATTR_UNUSED *f, hid_t H5_ATTR_UNUSED dxpl_id, H5O_t H5 /* BSD-like systems */ the_time += tm.tm_gmtoff; #elif defined(H5_HAVE_TIMEZONE) - the_time -= HDget_timezone() - (tm.tm_isdst ? 3600 : 0); + the_time -= HDgettimezone() - (tm.tm_isdst ? 3600 : 0); #else /* * The catch-all. If we can't convert a character string universal diff --git a/src/H5private.h b/src/H5private.h index 26111ff..6016295 100644 --- a/src/H5private.h +++ b/src/H5private.h @@ -495,7 +495,7 @@ #endif /* Double constant wrapper - * + * * Quiets gcc warnings from -Wunsuffixed-float-constants. * * This is a really annoying warning since the standard specifies that @@ -935,6 +935,14 @@ H5_DLL int HDfprintf (FILE *stream, const char *fmt, ...); #ifndef HDgets #define HDgets(S) gets(S) #endif /* HDgets */ +#ifndef H5_HAVE_TM_GMTOFF +#ifdef H5_HAVE_TIMEZONE + #ifndef HDgettimezone + #define HDgettimezone() HDget_timezone() + #endif /* HDgettimezone */ + H5_DLL int HDget_timezone(void); +#endif /* H5_HAVE_TIMEZONE */ +#endif /* H5_HAVE_TM_GMTOFF */ #ifndef HDgettimeofday #define HDgettimeofday(S,P) gettimeofday(S,P) #endif /* HDgettimeofday */ @@ -2065,7 +2073,7 @@ extern hbool_t H5_MPEinit_g; /* Has the MPE Library been initialized? */ FUNC_ENTER_COMMON_NOERR(!H5_IS_API(FUNC)); \ if(H5_PKG_INIT_VAR || !H5_TERM_GLOBAL) { -/* Use the following two macros as replacements for the FUNC_ENTER_NOAPI +/* Use the following two macros as replacements for the FUNC_ENTER_NOAPI * and FUNC_ENTER_NOAPI_NOINIT macros when the function needs to set * up a metadata tag. */ #define FUNC_ENTER_NOAPI_TAG(dxpl_id, tag, err) { \ diff --git a/src/H5system.c b/src/H5system.c index fc01366..0de920c 100644 --- a/src/H5system.c +++ b/src/H5system.c @@ -599,24 +599,28 @@ void HDsrand(unsigned int seed) * *------------------------------------------------------------------------- */ +#ifndef H5_HAVE_TM_GMTOFF #ifdef H5_HAVE_TIMEZONE -long HDget_timezone(void) +long int HDget_timezone(void) { +#ifdef H5_HAVE_VISUAL_STUDIO #if _MSC_VER >= 1900 /* VS 2015 */ /* In gcc and in Visual Studio prior to VS 2015 'timezone' is a global * variable declared in time.h. That variable was deprecated and in * VS 2015 is removed, with _get_timezone replacing it. */ - long timezone = 0; + long int timezone = 0; #define HDget_timezone(V) _get_timezone(V); HDget_timezone(&timezone); #endif +#endif return timezone; } #endif /* H5_HAVE_TIMEZONE */ +#endif /* H5_HAVE_TM_GMTOFF */ /*------------------------------------------------------------------------- * Function: Wgettimeofday |