On Thu, 2014-10-09 at 07:46 +0200, Gregor Horvath wrote:
> Hi,
> 
> I use SyncEvolution 1.2.2 on a N900 version in conjunction with a
> Radicale server and Icedove clients on the Desktop.
> It seems that syncevolution does not like some entries created from a
> Debian Icedove Client.
> I get the following error, although this snippet is validating fine
> with http://severinghaus.org/projects/icv/
> 
> From the syncevolution log:
> 
> First ERROR encountered: error code from SyncEvolution fatal error
> (local, status 10500): @default/calendar5: parsing ical:
> BEGIN:VCALENDAR VERSION:2.0 PRODID:-//Synthesis AG//NONSGML SyncML
> Engine V3.4.0.27//EN BEGIN:VTIMEZONE

Was this cut-and-pasted? There are line breaks missing in this line. The
item content should be:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Synthesis AG//NONSGML SyncML Engine V3.4.0.27//EN
BEGIN:VTIMEZONE

I suspect a cut-and-paste error, not an error in the actual item data.

> TZID:Europe/Vienna
> BEGIN:STANDARD
> DTSTART:19671029T020000
> RRULE:FREQ=MONTHLY;INTERVAL=12;BYDAY=-1SU
> TZOFFSETFROM:+0200
> TZOFFSETTO:+0100
> TZNAME:CET
> END:STANDARD
> BEGIN:DAYLIGHT
> DTSTART:19870329T030000
> RRULE:FREQ=MONTHLY;INTERVAL=12;BYDAY=-1SU
> TZOFFSETFROM:+0100
> TZOFFSETTO:+0200
> TZNAME:CEST
> END:DAYLIGHT
> END:VTIMEZONE
> BEGIN:VEVENT
> LAST-MODIFIED:20141005T065925Z
> DTSTAMP:20141008T072729Z
> CREATED:20141005T065735Z
> UID:66348ec4-f535-4cca-8f8e-a4d5e9aa1edc
> SUMMARY:Probe Ringwald
> DESCRIPTION:Für 8.11
> LOCATION:le Festsaal
> DTSTART;TZID=Europe/Vienna:20141022T190000
> END:VEVENT
> END:VCALENDAR

Sorry, I have no idea why this item is causing problems. Note that the
failure comes from the Maemo calendar, not code in SyncEvolution. Here's
the source code where the Maemo calendar library is asked to parse this
data:

TrackingSyncSource::InsertItemResult MaemoCalendarSource::insertItem(const 
string &uid, const std::string &item, bool raw)
{
    int err;
    CComponent *c;
    bool r, u = false;
    TrackingSyncSource::InsertItemResult result;

    if (cal->getCalendarType() == BIRTHDAY_CALENDAR) {
        // stubbornly refuse to try this
        throwError(string("can't sync smart calendar ") + 
cal->getCalendarName());
    }

    if (entry_format == -1) {
        c = new CJournal(item);
        err = CALENDAR_OPERATION_SUCCESSFUL;
    } else {
        vector< CComponent * > comps = conv->icalVcalToLocal(item, 
FileType(entry_format), err);
        // Note that a non-success value in "err" is not necessarily fatal,
        // I seem to get a nonspecific "application error" on certain types of
        // barely-legal input (mostly on todo entries), yet a component is 
returned
        if (!comps.size()) {
            if (err != CALENDAR_OPERATION_SUCCESSFUL) {
                throwError(string("parsing ical: ") + item);
            } else {
                throwError(string("no events in ical: ") + item);
            }
        }

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.



_______________________________________________
SyncEvolution mailing list
[email protected]
https://lists.syncevolution.org/mailman/listinfo/syncevolution

Reply via email to