diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2013-05-04 21:39:27 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2013-05-04 21:39:27 +0000 |
commit | fec6336699f34758d3e6cb41b2edf902fedb9035 (patch) | |
tree | 8256c1dbf3ca7c9e58a3dbecf07cf826fb2e0ce2 /src/libical/icaltime.c | |
parent | 7dbffd7e2b0067e834801617c5c486e3177f6709 (diff) | |
download | libical-master.tar.gz |
libical-1.0HEADlibical-1.0master
Diffstat (limited to 'src/libical/icaltime.c')
-rw-r--r-- | src/libical/icaltime.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/libical/icaltime.c b/src/libical/icaltime.c index c1c4f35..b984256 100644 --- a/src/libical/icaltime.c +++ b/src/libical/icaltime.c @@ -47,9 +47,11 @@ #ifdef WIN32 #include <windows.h> +#endif -#define snprintf _snprintf -#define strcasecmp stricmp +#if defined(_MSC_VER) +#define snprintf _snprintf +#define strcasecmp stricmp #endif #ifdef WIN32 @@ -329,6 +331,7 @@ char* set_tz(const char* tzid) if(new_tz == 0){ icalerror_set_errno(ICAL_NEWFAILED_ERROR); + free(old_tz_copy); return 0; } @@ -363,8 +366,12 @@ void unset_tz(char *tzstr) #ifdef HAVE_UNSETENV unsetenv("TZ"); #else +#ifdef _MSC_VER + putenv("TZ="); // The equals is required to remove with MS Visual C++ +#else putenv("TZ"); #endif +#endif } /* Free any previous TZ environment string we have used in a synchronized manner */ @@ -426,15 +433,11 @@ to prevent any crashes */ /* Set TZ to UTC and use mktime to convert to a time_t. */ old_tz = set_tz ("UTC"); -#ifdef WIN32 tzset (); -#endif t = mktime (&stm); unset_tz (old_tz); -#ifdef WIN32 tzset (); -#endif #ifdef HAVE_PTHREAD pthread_mutex_unlock (&tzid_mutex); @@ -507,7 +510,7 @@ struct icaltimetype icaltime_normalize(const struct icaltimetype tt) struct icaltimetype icaltime_from_string(const char* str) { struct icaltimetype tt = icaltime_null_time(); - int size; + size_t size; icalerror_check_arg_re(str!=0,"str",icaltime_null_time()); |