Hi,
I have an invalid ics file again, it seems, similar to a post I made some time ago:
https://forums.bitfire.at/post/9788
However, the cause appears to be different this time and I cannot figure out what is wrong. Here is the debug message:
--- BEGIN DEBUG INFO ---
Account name: xxx@gmail.com
Authority: org.dmfs.tasks
REMOTE RESOURCE:
https://xxx/ba387c24-7f35-4c47-afc7-1da7b5bdaa75.ics
EXCEPTION:
java.lang.NullPointerException: Attempt to invoke virtual method 'void java.util.Calendar.setTimeZone(java.util.TimeZone)' on a null object reference
at java.text.DateFormat.setTimeZone(DateFormat.java:690)
at net.fortuna.ical4j.model.Iso8601.<init>(Iso8601.java:77)
at net.fortuna.ical4j.model.Date.<init>(Date.java:150)
at net.fortuna.ical4j.model.DateTime.<init>(DateTime.java:253)
at net.fortuna.ical4j.model.TimeZone.getOffset(TimeZone.java:108)
at java.util.GregorianCalendar.computeFields(GregorianCalendar.java:2356)
at java.util.GregorianCalendar.computeTime(GregorianCalendar.java:2813)
at java.util.Calendar.updateTime(Calendar.java:3397)
at java.util.Calendar.getTimeInMillis(Calendar.java:1761)
at java.util.Calendar.getTime(Calendar.java:1734)
at java.text.SimpleDateFormat.parseInternal(SimpleDateFormat.java:1633)
at java.text.SimpleDateFormat.parse(SimpleDateFormat.java:1528)
at java.text.DateFormat.parse(DateFormat.java:360)
at net.fortuna.ical4j.model.DateTime.setTime(DateTime.java:415)
at net.fortuna.ical4j.model.DateTime.<init>(DateTime.java:321)
at net.fortuna.ical4j.model.property.DateProperty.setValue(DateProperty.java:137)
at net.fortuna.ical4j.data.CalendarBuilder$ContentHandlerImpl.propertyValue(CalendarBuilder.java:299)
at net.fortuna.ical4j.data.CalendarParserImpl$PropertyParser.parse(CalendarParserImpl.java:282)
at net.fortuna.ical4j.data.CalendarParserImpl$PropertyParser.access$1100(CalendarParserImpl.java:229)
at net.fortuna.ical4j.data.CalendarParserImpl$PropertyListParser.parse(CalendarParserImpl.java:210)
at net.fortuna.ical4j.data.CalendarParserImpl$ComponentParser.parse(CalendarParserImpl.java:422)
at net.fortuna.ical4j.data.CalendarParserImpl$ComponentParser.access$900(CalendarParserImpl.java:406)
at net.fortuna.ical4j.data.CalendarParserImpl$PropertyListParser.parse(CalendarParserImpl.java:208)
at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendar(CalendarParserImpl.java:115)
at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendarList(CalendarParserImpl.java:180)
at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:149)
at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:198)
at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:178)
at at.bitfire.ical4android.Task$Companion.fromReader(Task.kt:66)
at at.bitfire.davdroid.syncadapter.TasksSyncManager.processVTodo(TasksSyncManager.kt:136)
at at.bitfire.davdroid.syncadapter.TasksSyncManager.access$processVTodo(TasksSyncManager.kt:44)
at at.bitfire.davdroid.syncadapter.TasksSyncManager$downloadRemote$2$1$1.invoke(TasksSyncManager.kt:122)
at at.bitfire.davdroid.syncadapter.TasksSyncManager$downloadRemote$2$1$1.invoke(TasksSyncManager.kt:44)
at at.bitfire.davdroid.syncadapter.SyncManager.useRemote(SyncManager.kt:785)
at at.bitfire.davdroid.syncadapter.TasksSyncManager$downloadRemote$2$1.invoke(TasksSyncManager.kt:114)
at at.bitfire.davdroid.syncadapter.TasksSyncManager$downloadRemote$2$1.invoke(TasksSyncManager.kt:44)
at at.bitfire.dav4android.Response$Companion.parse(Response.kt:211)
at at.bitfire.dav4android.DavResource$processMultiStatus$2.invoke(DavResource.kt:384)
at at.bitfire.dav4android.DavResource.processMultiStatus(DavResource.kt:403)
at at.bitfire.dav4android.DavResource.processMultiStatus(DavResource.kt:354)
at at.bitfire.dav4android.DavCalendar.multiget(DavCalendar.kt:150)
at at.bitfire.davdroid.syncadapter.TasksSyncManager$downloadRemote$2.invoke(TasksSyncManager.kt:113)
at at.bitfire.davdroid.syncadapter.TasksSyncManager$downloadRemote$2.invoke(TasksSyncManager.kt:44)
at at.bitfire.davdroid.syncadapter.SyncManager.useRemote(SyncManager.kt:774)
at at.bitfire.davdroid.syncadapter.SyncManager.useRemoteCollection(SyncManager.kt:795)
at at.bitfire.davdroid.syncadapter.TasksSyncManager.downloadRemote(TasksSyncManager.kt:112)
at at.bitfire.davdroid.syncadapter.SyncManager$syncRemote$1$1.run(SyncManager.kt:438)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:457)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
SOFTWARE INFORMATION
Package: at.bitfire.davdroid
Version: 2.0.4-gplay (245) from 8 Sep 2018
Installed from: com.android.vending
JB Workaround installed: no
CONNECTIVITY (at the moment)
Active connection: mobile, CONNECTED
CONFIGURATION
Power saving disabled: yes
android.permission.READ_CONTACTS permission: granted
android.permission.WRITE_CONTACTS permission: granted
android.permission.READ_CALENDAR permission: granted
android.permission.WRITE_CALENDAR permission: granted
org.dmfs.permission.READ_TASKS permission: granted
org.dmfs.permission.WRITE_TASKS permission: granted
System-wide synchronization: automatically
Account: xxx@gmail.com
Address book sync. interval: 60 min
Calendar sync. interval: 60 min
OpenTasks sync. interval: 60 min
WiFi only: false
[CardDAV] Contact group method: GROUP_VCARDS
[CalDAV] Time range (past days): 90
Manage calendar colors: true
SQLITE DUMP
android_metadata
| locale |
| en_GB |
----------
services
| _id | accountName | service | principal |
| 3 | xxx@gmail.com | caldav | <null> |
----------
sqlite_sequence
| name | seq |
| services | 3 |
| homesets | 14 |
| collections | 8 |
----------
homesets
| _id | serviceID | url |
| 14 | 3 | https://xxx/ |
----------
collections
| _id | serviceID | url | readOnly | displayName | description | color | timezone | supportsVEVENT | supportsVTODO | sync | type | source | forceReadOnly | privWriteContent | privUnbind |
| 8 | 3 | https://xxx/ | 0 | <null> | <null> | <null> | <null> | 1 | 1 | 1 | CALENDAR | <null> | 0 | 1 | 1 |
----------
SYSTEM INFORMATION
Android version: 8.0.0 (R16NW.G930FXXS2ERH6)
Device: samsung SM-G930F (herolte)
And here is the ics file:
BEGIN:VCALENDAR
PRODID:-//Mozilla.org/NONSGML Mozilla Calendar V1.1//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Europe/London
BEGIN:DAYLIGHT
TZOFFSETFROM:+0000
TZOFFSETTO:+0100
TZNAME:BST
DTSTART:19700329T010000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0100
TZOFFSETTO:+0000
TZNAME:GMT
DTSTART:19701025T020000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
CREATED:20180326T155831Z
LAST-MODIFIED:20180328T165414Z
DTSTAMP:20180328T165414Z
UID:ba387c24-7f35-4c47-afc7-1da7b5bdaa75
SUMMARY:xxx
STATUS:CONFIRMED
X-MOZ-LASTACK:20180328T165414Z
DTSTART;TZID=Europe/London:20180328T160000
DTEND;TZID=Europe/London:20180328T180000
SEQUENCE:1
LOCATION:xxx
X-MOZ-GENERATION:1
BEGIN:VALARM
ACTION:DISPLAY
TRIGGER;VALUE=DURATION:-PT15M
DESCRIPTION:xxx
END:VALARM
END:VEVENT
END:VCALENDAR
Could you advise please?
Thanks in advance!