1.6.2: broken sync of events presumably with fields with long lines



  • Exception from logcat:

    06-25 16:07:58.684 28777  4347 E davdroid: [syncadapter.CalendarSyncManager] Received invalid iCalendar, ignoring
    06-25 16:07:58.684 28777  4347 E davdroid: EXCEPTION at.bitfire.ical4android.InvalidCalendarException: Couldn't parse iCalendar resource
    06-25 16:07:58.684 28777  4347 E davdroid: 	at at.bitfire.ical4android.Event$Companion.fromStream(Event.kt:91)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at at.bitfire.ical4android.Event$Companion.fromStream$default(Event.kt:80)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at at.bitfire.ical4android.Event.fromStream(Event.kt)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at at.bitfire.davdroid.syncadapter.CalendarSyncManager.processVEvent(CalendarSyncManager.java:221)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at at.bitfire.davdroid.syncadapter.CalendarSyncManager.downloadRemote(CalendarSyncManager.java:204)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at at.bitfire.davdroid.syncadapter.SyncManager.performSync(SyncManager.java:179)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at at.bitfire.davdroid.syncadapter.CalendarsSyncAdapterService$SyncAdapter.sync(CalendarsSyncAdapterService.java:69)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at at.bitfire.davdroid.syncadapter.SyncAdapterService$SyncAdapter.onPerformSync(SyncAdapterService.java:85)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:272)
    06-25 16:07:58.684 28777  4347 E davdroid: Caused by: net.fortuna.ical4j.data.ParserException: Error at line 13:Illegal property [ T TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TES]
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:143)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:198)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:178)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at at.bitfire.ical4android.Event$Companion.fromStream(Event.kt:87)
    06-25 16:07:58.684 28777  4347 E davdroid: 	... 8 more
    06-25 16:07:58.684 28777  4347 E davdroid: Caused by: java.lang.IllegalArgumentException: Illegal property [ T TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TES]
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.model.PropertyFactoryImpl.createProperty(PropertyFactoryImpl.java:86)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.data.CalendarBuilder$ContentHandlerImpl.startProperty(CalendarBuilder.java:326)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.data.CalendarParserImpl$PropertyParser.parse(CalendarParserImpl.java:206)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.data.CalendarParserImpl$PropertyParser.access$1100(CalendarParserImpl.java:190)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.data.CalendarParserImpl$PropertyListParser.parse(CalendarParserImpl.java:173)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.data.CalendarParserImpl$ComponentParser.parse(CalendarParserImpl.java:383)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.data.CalendarParserImpl$ComponentParser.access$900(CalendarParserImpl.java:367)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.data.CalendarParserImpl$PropertyListParser.parse(CalendarParserImpl.java:171)
    06-25 16:07:58.684 28777  4347 E davdroid: 	at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:122)
    06-25 16:07:58.684 28777  4347 E davdroid: 	... 11 more
    

    Example of broken event


  • developer

    Can't reproduce.

    Logs: Illegal property [ T TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TES] in upper case, uploaded ics: test in lower case

    Why?



  • @rfc2822 said in 1.6.2: broken sync of events presumably with fields with long lines:

    Can't reproduce.

    Strange, but me either.
    I've tried upgrading on another device and it works. I've downgraded affected device (with app data loss) than upgraded — again, works. Play Store version.

    Logs: Illegal property [ T TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TES] in upper case, uploaded ics: test in lower case

    No idea. I'd suppose that parser for some reason does not detects continuation lines and assumes that part of the line before ':' is field title and converts it to uppercase. Haven't looked into the code (I'm not familiar with Kotlin and Java), it's just an assumption.


Log in to reply
 

Looks like your connection to Bitfire App Forums was lost, please wait while we try to reconnect.