diff options
-rw-r--r-- | calendar/ChangeLog | 5 | ||||
-rw-r--r-- | calendar/TODO | 4 | ||||
-rw-r--r-- | calendar/timeutil.c | 7 |
3 files changed, 16 insertions, 0 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 481537730e..8387496f38 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,8 @@ +1999-07-19 Matt Martin <matt@abacusnet.net> + + * timeutil.c (time_from_isodate): Handle the 'Z' parameter to the + ISO date format to convert from GMT time. + 1999-07-17 Nat Friedman <nat@gnome-support.com> * calendar.c (calendar_add_object): Copy the new UID into the diff --git a/calendar/TODO b/calendar/TODO index db696878a0..5271b15909 100644 --- a/calendar/TODO +++ b/calendar/TODO @@ -7,6 +7,10 @@ BUGS: - X-fields (extensions) are stripped from a vCal file when it is saved. They should be preserved. +Features: + +- Add a calendar-week so that people know which week of the year it is + Year view: - See why it is so fucking slow when opening its notebook page for the diff --git a/calendar/timeutil.c b/calendar/timeutil.c index 10b9483af0..78c1c46d56 100644 --- a/calendar/timeutil.c +++ b/calendar/timeutil.c @@ -18,6 +18,9 @@ time_from_isodate (char *str) struct tm my_tm; time_t t; + if (strlen (str) < 14) + return -1; + my_tm.tm_year = (digit_at (str, 0) * 1000 + digit_at (str, 1) * 100 + digit_at (str, 2) * 10 + digit_at (str, 3)) - 1900; @@ -29,6 +32,10 @@ time_from_isodate (char *str) my_tm.tm_isdst = -1; t = mktime (&my_tm); + + if (str [15] == 'Z') + t -= timezone; + return t; } |