aboutsummaryrefslogtreecommitdiff
path: root/mail/evolution/files/patch-widgets_e-timezone-dialog_e-timezone-dialog.c
diff options
context:
space:
mode:
Diffstat (limited to 'mail/evolution/files/patch-widgets_e-timezone-dialog_e-timezone-dialog.c')
-rw-r--r--mail/evolution/files/patch-widgets_e-timezone-dialog_e-timezone-dialog.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/mail/evolution/files/patch-widgets_e-timezone-dialog_e-timezone-dialog.c b/mail/evolution/files/patch-widgets_e-timezone-dialog_e-timezone-dialog.c
new file mode 100644
index 000000000000..a6440719257b
--- /dev/null
+++ b/mail/evolution/files/patch-widgets_e-timezone-dialog_e-timezone-dialog.c
@@ -0,0 +1,34 @@
+--- widgets/e-timezone-dialog/e-timezone-dialog.c.orig Mon Jul 10 21:50:12 2006
++++ widgets/e-timezone-dialog/e-timezone-dialog.c Mon Jul 10 22:11:54 2006
+@@ -80,7 +80,9 @@ struct _ETimezoneDialogPrivate {
+
+ #ifndef G_OS_WIN32 /* Declared properly in time.h already */
+ extern char *tzname[2];
++#ifndef __BSD_VISIBLE
+ extern long timezone;
++#endif
+ extern int daylight;
+ #endif
+
+@@ -317,9 +319,20 @@ static const icaltimezone*
+ get_local_timezone()
+ {
+ icaltimezone *zone;
++ long offset;
++#ifdef __BSD_VISIBLE
++ time_t tt;
++ struct tm tm;
++#endif
+
+ tzset();
+- zone = icaltimezone_get_builtin_timezone_from_offset (-timezone, tzname[0]);
++#ifdef __BSD_VISIBLE
++ localtime_r (&tt, &tm);
++ offset = tm.tm_gmtoff;
++#else
++ offset = -timezone;
++#endif
++ zone = icaltimezone_get_builtin_timezone_from_offset (offset, tzname[0]);
+
+ return zone;
+ }