summaryrefslogtreecommitdiff
path: root/src/libical/icaltime.c
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2013-05-04 21:39:27 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2013-05-04 21:39:27 +0000
commitfec6336699f34758d3e6cb41b2edf902fedb9035 (patch)
tree8256c1dbf3ca7c9e58a3dbecf07cf826fb2e0ce2 /src/libical/icaltime.c
parent7dbffd7e2b0067e834801617c5c486e3177f6709 (diff)
downloadlibical-master.tar.gz
Diffstat (limited to 'src/libical/icaltime.c')
-rw-r--r--src/libical/icaltime.c17
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());