commit 3fd978a7ddc9d0f98bc1048f28ab527cfbf60ac6
parent 69ed24f94f81bd506b95dbc3cd858b842854c195
Author: Andrej Kacian <ticho@claws-mail.org>
Date: Mon, 13 Mar 2017 19:03:25 +0100
Initialize icaltimetype variables in Vcalendar's feed_fetch().
Also print out debug output if an event has no start or end,
as it can help determine why a malformed event file shows
weird times or duration.
Diffstat:
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/plugins/vcalendar/vcal_folder.c b/src/plugins/vcalendar/vcal_folder.c
@@ -610,7 +610,8 @@ add_new:
}
if (rprop && ritr) {
struct icaldurationtype ical_dur;
- struct icaltimetype dtstart, dtend;
+ struct icaltimetype dtstart = icaltime_null_time();
+ struct icaltimetype dtend = icaltime_null_time();
evt = icalcomponent_new_clone(evt);
prop = icalcomponent_get_first_property(evt, ICAL_RRULE_PROPERTY);
if (prop) {
@@ -620,9 +621,13 @@ add_new:
prop = icalcomponent_get_first_property(evt, ICAL_DTSTART_PROPERTY);
if (prop)
dtstart = icalproperty_get_dtstart(prop);
+ else
+ debug_print("event has no DTSTART!\n");
prop = icalcomponent_get_first_property(evt, ICAL_DTEND_PROPERTY);
if (prop)
dtend = icalproperty_get_dtend(prop);
+ else
+ debug_print("event has no DTEND!\n");
ical_dur = icaltime_subtract(dtend, dtstart);
next = icalrecur_iterator_next(ritr);
if (!icaltime_is_null_time(next) &&