Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content

address book sync error "KotlinNullPointerException"

  • /e/ version: 0.9-p-2020051454091
  • Device model: Fairphone 3
  • When it started to occur: right after trying to sync my address book via Posteo (I installed /e/ just yesterday)

Summary

  • The device is unusable
  • [?] The bug is the source of a data loss (might be? Not sure..) or a big waste of time
  • The bug concerns a third party app
  • The bug concerns security
  • The bug concerns privacy

The problem

After I connected /e/ to my Posteo account, everything synced just fine, including my contacts. However, since syncing it I have been getting the following push notification about once every two minutes:

"default addressbook (xxx@posteo.de JQ) KotlinNullPointerException"

I am not allowed to deactivate the notification. Deactivating synchronisation in system settings fails, since it just reactivates by itself. Also, I tried using DAVx5 instead of WebDav, while deleting the WebDAV account. However WebDAV seems to just automatically reinstall itself.


Edit right after writing the I deleted the WebDAV version of the account again and now it seems to not reinitiate itself. The notifications have stopped for the time being.

What is the current behavior?

just as described above.

What is the expected correct behavior?

Either to sync normally or at least to allow me to stop it from syncing, which temporarrly would be okay.

Technical informations

Relevant logs (adb logcat)

Full Debug Info: (shortened wherever I am unsure whether I reveal personal data. I am new to all this so please contact me if I left out some essential part)

--- BEGIN DEBUG INFO --- SYNCHRONIZATION INFO Account name: default addressbook (xxx@posteo.de JQ) Authority: com.android.contacts

REMOTE RESOURCE: https://posteo.de:8843/addressbooks/xxx/default/xxx.vcf

EXCEPTION: kotlin.KotlinNullPointerException at foundation.e.accountmanager.syncadapter.ContactsSyncManager$ResourceDownloader.download(ContactsSyncManager.kt:445) at foundation.e.vcard4android.Contact$Companion.fromVCard(Contact.kt:190) at foundation.e.vcard4android.Contact$Companion.fromReader(Contact.kt:131) at foundation.e.accountmanager.syncadapter.ContactsSyncManager.processVCard(ContactsSyncManager.kt:333) at foundation.e.accountmanager.syncadapter.ContactsSyncManager.access$processVCard(ContactsSyncManager.kt:75) at foundation.e.accountmanager.syncadapter.ContactsSyncManager$downloadRemote$2$1$1.invoke(ContactsSyncManager.kt:305) at foundation.e.accountmanager.syncadapter.ContactsSyncManager$downloadRemote$2$1$1.invoke(ContactsSyncManager.kt:75) at foundation.e.accountmanager.syncadapter.SyncManager.useRemote(SyncManager.kt:842) at foundation.e.accountmanager.syncadapter.ContactsSyncManager$downloadRemote$2$1.invoke(ContactsSyncManager.kt:292) at foundation.e.accountmanager.syncadapter.ContactsSyncManager$downloadRemote$2$1.invoke(ContactsSyncManager.kt:75) at foundation.e.dav4jvm.Response$Companion.parse(Response.kt:211) at foundation.e.dav4jvm.DavResource$processMultiStatus$2.invoke(DavResource.kt:524) at foundation.e.dav4jvm.DavResource.processMultiStatus(DavResource.kt:543) at foundation.e.dav4jvm.DavResource.processMultiStatus(DavResource.kt:494) at foundation.e.dav4jvm.DavAddressBook.multiget(DavAddressBook.kt:151) at foundation.e.accountmanager.syncadapter.ContactsSyncManager$downloadRemote$2.invoke(ContactsSyncManager.kt:291) at foundation.e.accountmanager.syncadapter.ContactsSyncManager$downloadRemote$2.invoke(ContactsSyncManager.kt:75) at foundation.e.accountmanager.syncadapter.SyncManager.useRemote(SyncManager.kt:831) at foundation.e.accountmanager.syncadapter.SyncManager.useRemoteCollection(SyncManager.kt:852) at foundation.e.accountmanager.syncadapter.ContactsSyncManager.downloadRemote(ContactsSyncManager.kt:290) at foundation.e.accountmanager.syncadapter.SyncManager$syncRemote$1$1.run(SyncManager.kt:470) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:458) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.lang.Thread.run(Thread.java:764)

SOFTWARE INFORMATION

  • foundation.e.accountmanager 2.6.3-ose (328)
  • com.android.providers.contacts 9 (28)
  • com.android.providers.calendar 9 (28)
  • foundation.e.tasks 1.2.3-6-g37caecf (5100)
  • com.android.contacts 1.7.31 (10731)
  • foundation.e.calendar 1.0.18 (20)

CONNECTIVITY (at the moment)

  • [ Transports: CELLULAR Capabilities: SUPL&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&NOT_CONGESTED&NOT_SUSPENDED Unwanted: LinkUpBandwidth>=51200Kbps LinkDnBandwidth>=102400Kbps Specifier: <1>]
  • [ Transports: WIFI Capabilities: NOT_METERED&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&FOREGROUND&NOT_CONGESTED&NOT_SUSPENDED Unwanted: LinkUpBandwidth>=1048576Kbps LinkDnBandwidth>=1048576Kbps SignalStrength: -54]

CONFIGURATION Power saving disabled: yes Notifications (not blocked): [group] sync isBlocked=false syncProblems: importance=3 syncIoErrors: importance=1 syncWarnings: importance=2 general: importance=3 debug: importance=4 Permissions: READ_CONTACTS: granted WRITE_CONTACTS: granted READ_CALENDAR: granted WRITE_CALENDAR: granted READ_TASKS: granted WRITE_TASKS: granted ACCESS_COARSE_LOCATION: granted System-wide synchronization: automatically

ACCOUNTS Account: xxx@e.email Address book sync. interval: 2 min Calendar sync. interval: 2 min OpenTasks sync. interval: 2 min WiFi only: false [CardDAV] Contact group method: GROUP_VCARDS [CalDAV] Time range (past days): 90 Manage calendar colors: true Use event colors: false Account: xxx@posteo.de Address book sync. interval: 2 min Calendar sync. interval: 2 min OpenTasks sync. interval: 2 min WiFi only: false [CardDAV] Contact group method: GROUP_VCARDS [CalDAV] Time range (past days): 90 Manage calendar colors: true Use event colors: false Account {name=xxx@e.email, type=e.foundation.webdav.eelo} is invalid: No main account assigned to address book account Account {name=xxx@posteo.de, type=e.foundation.webdav} is invalid: No main account assigned to address book account

SQLITE DUMP android_metadata | locale | | de_DE |

service | id | accountName | authState | accountType | addressBookAccountType | type | principal | | 1 | xxx@e.email | | e.foundation.webdav.eelo | foundation.e.accountmanager.eelo.address_book | carddav | https://ecloud.global/remote.php/dav/principals/users/xxx@e.email/ | | 2 | xxx@e.email | | e.foundation.webdav.eelo | foundation.e.accountmanager.eelo.address_book | caldav | https://ecloud.global/remote.php/dav/principals/users/xxx@e.email/ | | 3 | xxx@posteo.de | | e.foundation.webdav | foundation.e.accountmanager.address_book | carddav | https://posteo.de:8843/principals/xxx/ | | 4 | xxx@posteo.de | | e.foundation.webdav | foundation.e.accountmanager.address_book | caldav | https://posteo.de:8443/principals/xxx/ |

sqlite_sequence | name | seq | | service | 4 | | homeset | 4 | | collection | 6 |

homeset | id | serviceId | url | privBind | displayName | | 1 | 2 | https://ecloud.global/remote.php/dav/calendars/xxx@e.email/ | 1 | | | 2 | 1 | https://ecloud.global/remote.php/dav/addressbooks/users/xxx@e.email/ | 1 | | | 3 | 3 | https://posteo.de:8843/addressbooks/xxx/ | 1 | | | 4 | 4 | https://posteo.de:8443/calendars/xxx/ | 1 | |


room_master_table | id | identity_hash | | 42 | |

SYSTEM INFORMATION Android version: 9 (lineage_FP3-userdebug 9 PQ3A.190801.002 eng.root.20200514.140131 dev-keys) Device: Fairphone FP3 (FP3)

--- END DEBUG INFO ---

Edited by David