]> www.infradead.org Git - users/dwmw2/ews-sync.git/commitdiff
Complain loudly about recurrence with no time zone
authorDavid Woodhouse <dwmw2@infradead.org>
Mon, 19 Jul 2010 08:05:52 +0000 (09:05 +0100)
committerDavid Woodhouse <dwmw2@infradead.org>
Mon, 19 Jul 2010 08:05:52 +0000 (09:05 +0100)
ews2ical.c

index 410aa2916008b6d3691b42ea2f5a79939736290b..b1918e18e90b191b01484ec83761bc3263545a4a 100644 (file)
@@ -31,7 +31,7 @@ int process_end(icalcomponent *comp, xmlNode *xml_node, icaltimezone *zone);
 int process_location(icalcomponent *comp, xmlNode *xml_node);
 int process_body(icalcomponent *comp, xmlNode *xml_node);
 int process_subject(icalcomponent *comp, xmlNode *xml_node);
-int process_recurrence(icalcomponent *comp, xmlNode *xml_node);
+int process_recurrence(icalcomponent *comp, xmlNode *xml_node, icaltimezone *zone);
 int process_itemid(icalcomponent *comp, xmlNode *xmlnode);
 int process_reminder_mins(icalcomponent *comp, xmlNode *xmlnode);
 icaltimezone *get_timezone(xmlNode *xmlnode);
@@ -190,7 +190,7 @@ icalcomponent *ews_calitem_to_ical(xmlNode *xml_node)
                else if (!strcmp((char *)xml_node->name, "Subject"))
                        process_subject(comp, xml_node);
                else if (!strcmp((char *)xml_node->name, "Recurrence"))
-                       process_recurrence(comp, xml_node);
+                       process_recurrence(comp, xml_node, icaltz);
                else if (!strcmp((char *)xml_node->name, "ItemId"))
                        process_itemid(comp, xml_node);
                else if (!strcmp((char *)xml_node->name, "ReminderMinutesBeforeStart"))
@@ -473,7 +473,7 @@ static int weekindex_to_ical(const char *week)
        return 0;
 }      
                
-int process_recurrence(icalcomponent *comp, xmlNode *xml_node)
+int process_recurrence(icalcomponent *comp, xmlNode *xml_node, icaltimezone *zone)
 {
        struct icalrecurrencetype ical_recur;
        char *end_date = NULL, *nr_occurrences = NULL;
@@ -481,7 +481,9 @@ int process_recurrence(icalcomponent *comp, xmlNode *xml_node)
        xmlNode *xml_node2;
 
        ical_recur.freq = ICAL_NO_RECURRENCE;
-
+       if (!zone)
+               fprintf(stderr, "Recurrence with no recognised TimeZone. Hope this is an all-day event\n");
+               
        for (xml_node = xml_node->children; xml_node; xml_node = xml_node->next) {
                if (xml_node->type != XML_ELEMENT_NODE)
                        continue;