StrBufXMLEscAppend(ReportOut, Caldata, NULL, 0, 0);
StrBufAppendPrintf(ReportOut, "</C:calendar-data>");
StrBufAppendPrintf(ReportOut, "</D:prop>");
- FreeStrBuf(&Caldata);
- Caldata = NULL;
}
else {
// syslog(LOG_DEBUG, "caldav_report_one_item(%s) 404 not found", ChrPtr(ThisHref));
}
cal_multiget_out(msgnum, ThisHref, Caldata, ReportOut);
+
+ if (Caldata != NULL) {
+ FreeStrBuf(&Caldata);
+ }
}
long m;
memcpy(&m, array_get_element_at(msglist, i), sizeof(long));
- // Begin -- evaluate the calendar item
+ // load and parse one calendar item
+ StrBuf *one_item = fetch_ical(c, m);
+ icalcomponent *cal = icalcomponent_new_from_string(ChrPtr(one_item));
- syslog(LOG_DEBUG, "evaluating message %ld", m);
- StrBuf *one_item;
- one_item = fetch_ical(c, m);
- syslog(LOG_DEBUG, "calendar item:\n---\n\033[33m%s\n---\033[0m", ChrPtr(one_item));
- FreeStrBuf(&one_item);
+ // this is a horrible temporary hack to output every item
+ int qualify = 1;
- // End - evaluate the calendar item
+ if (qualify) {
+ cal_multiget_out(m, NULL, one_item, ReportOut);
+ }
+
+ icalcomponent_free(cal);
+ FreeStrBuf(&one_item);
}
array_free(msglist);