android icon indicating copy to clipboard operation
android copied to clipboard

EteSync v1.4.9 - The application suddenly stops when Creating an Address Book

Open ammarraisafti opened this issue 6 years ago • 2 comments

Actual behaviour

When a user creates an Address Book, that ability should be done well.

Expected behaviour

When creating an address book, I get the information "HTTP error has occurred". And when I tried to do it again, the application suddenly stopped.

Step to reproduce

  • Install and open the application
  • Sign In using the account that you previously created. If you do not have an account, you must register first.
  • Click on the account that you have created, then click on the three stack icon in the contact feature section.
  • Enter or fill in the display name and description, then click on the icon at the top right to save it.
  • Then you will get the information "An HTTP error has occurred".
  • Then click again on the icon on the top right to save it. Then the application suddenly stops.

Information

  • Device: Nubia n2 lite
  • Android version: 8.1.0
  • Application version: 1.4.9

Recording of the bug

https://youtu.be/eyxNDZP2jQ8

Logcat --------- beginning of crash 06-27 17:29:04.937 E/AndroidRuntime(13038): FATAL EXCEPTION: ModernAsyncTask #4 06-27 17:29:04.937 E/AndroidRuntime(13038): Process: com.etesync.syncadapter, PID: 13038 06-27 17:29:04.937 E/AndroidRuntime(13038): java.lang.RuntimeException: An error occurred while executing doInBackground() 06-27 17:29:04.937 E/AndroidRuntime(13038): at androidx.loader.content.ModernAsyncTask$3.done(ModernAsyncTask.java:164) 06-27 17:29:04.937 E/AndroidRuntime(13038): at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:383) 06-27 17:29:04.937 E/AndroidRuntime(13038): at java.util.concurrent.FutureTask.setException(FutureTask.java:252) 06-27 17:29:04.937 E/AndroidRuntime(13038): at java.util.concurrent.FutureTask.run(FutureTask.java:271) 06-27 17:29:04.937 E/AndroidRuntime(13038): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) 06-27 17:29:04.937 E/AndroidRuntime(13038): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) 06-27 17:29:04.937 E/AndroidRuntime(13038): at java.lang.Thread.run(Thread.java:764) 06-27 17:29:04.937 E/AndroidRuntime(13038): Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'byte[] com.etesync.syncadapter.model.JournalEntity.getEncryptedKey()' on a null object reference 06-27 17:29:04.937 E/AndroidRuntime(13038): at com.etesync.syncadapter.ui.CreateCollectionFragment$CreateCollectionLoader.loadInBackground(CreateCollectionFragment.kt:121) 06-27 17:29:04.937 E/AndroidRuntime(13038): at com.etesync.syncadapter.ui.CreateCollectionFragment$CreateCollectionLoader.loadInBackground(CreateCollectionFragment.kt:79) 06-27 17:29:04.937 E/AndroidRuntime(13038): at androidx.loader.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:307) 06-27 17:29:04.937 E/AndroidRuntime(13038): at androidx.loader.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:60) 06-27 17:29:04.937 E/AndroidRuntime(13038): at androidx.loader.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:48) 06-27 17:29:04.937 E/AndroidRuntime(13038): at androidx.loader.content.ModernAsyncTask$2.call(ModernAsyncTask.java:141) 06-27 17:29:04.937 E/AndroidRuntime(13038): at java.util.concurrent.FutureTask.run(FutureTask.java:266) 06-27 17:29:04.937 E/AndroidRuntime(13038): ... 3 more 06-27 17:29:08.357 E/ActivityThread(14685): Service com.etesync.syncadapter.syncadapter.AddressBooksSyncAdapterService has leaked ServiceConnection at.bitfire.cert4android.CustomCertManager$newServiceConn$1@becc4ad that was originally bound here 06-27 17:29:08.357 E/ActivityThread(14685): android.app.ServiceConnectionLeaked: Service com.etesync.syncadapter.syncadapter.AddressBooksSyncAdapterService has leaked ServiceConnection at.bitfire.cert4android.CustomCertManager$newServiceConn$1@becc4ad that was originally bound here 06-27 17:29:08.357 E/ActivityThread(14685): at android.app.LoadedApk$ServiceDispatcher.(LoadedApk.java:1554) 06-27 17:29:08.357 E/ActivityThread(14685): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:1446) 06-27 17:29:08.357 E/ActivityThread(14685): at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1610) 06-27 17:29:08.357 E/ActivityThread(14685): at android.app.ContextImpl.bindService(ContextImpl.java:1562) 06-27 17:29:08.357 E/ActivityThread(14685): at android.content.ContextWrapper.bindService(ContextWrapper.java:684) 06-27 17:29:08.357 E/ActivityThread(14685): at at.bitfire.cert4android.CustomCertManager.(CustomCertManager.kt:99) 06-27 17:29:08.357 E/ActivityThread(14685): at com.etesync.syncadapter.HttpClient$Builder.build(HttpClient.kt:181) 06-27 17:29:08.357 E/ActivityThread(14685): at com.etesync.syncadapter.syncadapter.SyncAdapterService$SyncAdapter$RefreshCollections.run$app_release(SyncAdapterService.kt:159) 06-27 17:29:08.357 E/ActivityThread(14685): at com.etesync.syncadapter.syncadapter.AddressBooksSyncAdapterService$AddressBooksSyncAdapter.onPerformSyncDo(AddressBooksSyncAdapterService.kt:58) 06-27 17:29:08.357 E/ActivityThread(14685): at com.etesync.syncadapter.syncadapter.SyncAdapterService$SyncAdapter.onPerformSync(SyncAdapterService.kt:66) 06-27 17:29:08.357 E/ActivityThread(14685): at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:321) 06-27 17:30:35.416 E/AndroidRuntime(14998): FATAL EXCEPTION: ModernAsyncTask #3 06-27 17:30:35.416 E/AndroidRuntime(14998): Process: com.etesync.syncadapter, PID: 14998 06-27 17:30:35.416 E/AndroidRuntime(14998): java.lang.RuntimeException: An error occurred while executing doInBackground() 06-27 17:30:35.416 E/AndroidRuntime(14998): at androidx.loader.content.ModernAsyncTask$3.done(ModernAsyncTask.java:164) 06-27 17:30:35.416 E/AndroidRuntime(14998): at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:383) 06-27 17:30:35.416 E/AndroidRuntime(14998): at java.util.concurrent.FutureTask.setException(FutureTask.java:252) 06-27 17:30:35.416 E/AndroidRuntime(14998): at java.util.concurrent.FutureTask.run(FutureTask.java:271) 06-27 17:30:35.416 E/AndroidRuntime(14998): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) 06-27 17:30:35.416 E/AndroidRuntime(14998): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) 06-27 17:30:35.416 E/AndroidRuntime(14998): at java.lang.Thread.run(Thread.java:764) 06-27 17:30:35.416 E/AndroidRuntime(14998): Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'byte[] com.etesync.syncadapter.model.JournalEntity.getEncryptedKey()' on a null object reference 06-27 17:30:35.416 E/AndroidRuntime(14998): at com.etesync.syncadapter.ui.CreateCollectionFragment$CreateCollectionLoader.loadInBackground(CreateCollectionFragment.kt:121) 06-27 17:30:35.416 E/AndroidRuntime(14998): at com.etesync.syncadapter.ui.CreateCollectionFragment$CreateCollectionLoader.loadInBackground(CreateCollectionFragment.kt:79) 06-27 17:30:35.416 E/AndroidRuntime(14998): at androidx.loader.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:307) 06-27 17:30:35.416 E/AndroidRuntime(14998): at androidx.loader.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:60) 06-27 17:30:35.416 E/AndroidRuntime(14998): at androidx.loader.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:48) 06-27 17:30:35.416 E/AndroidRuntime(14998): at androidx.loader.content.ModernAsyncTask$2.call(ModernAsyncTask.java:141) 06-27 17:30:35.416 E/AndroidRuntime(14998): at java.util.concurrent.FutureTask.run(FutureTask.java:266) 06-27 17:30:35.416 E/AndroidRuntime(14998): ... 3 more 06-27 17:37:24.207 E/ActivityThread(15471): Service com.etesync.syncadapter.syncadapter.CalendarsSyncAdapterService has leaked ServiceConnection at.bitfire.cert4android.CustomCertManager$newServiceConn$1@83539e that was originally bound here 06-27 17:37:24.207 E/ActivityThread(15471): android.app.ServiceConnectionLeaked: Service com.etesync.syncadapter.syncadapter.CalendarsSyncAdapterService has leaked ServiceConnection at.bitfire.cert4android.CustomCertManager$newServiceConn$1@83539e that was originally bound here 06-27 17:37:24.207 E/ActivityThread(15471): at android.app.LoadedApk$ServiceDispatcher.(LoadedApk.java:1554) 06-27 17:37:24.207 E/ActivityThread(15471): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:1446) 06-27 17:37:24.207 E/ActivityThread(15471): at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1610) 06-27 17:37:24.207 E/ActivityThread(15471): at android.app.ContextImpl.bindService(ContextImpl.java:1562) 06-27 17:37:24.207 E/ActivityThread(15471): at android.content.ContextWrapper.bindService(ContextWrapper.java:684) 06-27 17:37:24.207 E/ActivityThread(15471): at at.bitfire.cert4android.CustomCertManager.(CustomCertManager.kt:99) 06-27 17:37:24.207 E/ActivityThread(15471): at com.etesync.syncadapter.HttpClient$Builder.build(HttpClient.kt:181) 06-27 17:37:24.207 E/ActivityThread(15471): at com.etesync.syncadapter.syncadapter.SyncAdapterService$SyncAdapter$RefreshCollections.run$app_release(SyncAdapterService.kt:159) 06-27 17:37:24.207 E/ActivityThread(15471): at com.etesync.syncadapter.syncadapter.CalendarsSyncAdapterService$SyncAdapter.onPerformSyncDo(CalendarsSyncAdapterService.kt:48) 06-27 17:37:24.207 E/ActivityThread(15471): at com.etesync.syncadapter.syncadapter.SyncAdapterService$SyncAdapter.onPerformSync(SyncAdapterService.kt:66) 06-27 17:37:24.207 E/ActivityThread(15471): at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:321) 06-27 17:37:29.369 E/ActivityThread(15471): Service com.etesync.syncadapter.syncadapter.AddressBooksSyncAdapterService has leaked ServiceConnection at.bitfire.cert4android.CustomCertManager$newServiceConn$1@5d2bf49 that was originally bound here 06-27 17:37:29.369 E/ActivityThread(15471): android.app.ServiceConnectionLeaked: Service com.etesync.syncadapter.syncadapter.AddressBooksSyncAdapterService has leaked ServiceConnection at.bitfire.cert4android.CustomCertManager$newServiceConn$1@5d2bf49 that was originally bound here 06-27 17:37:29.369 E/ActivityThread(15471): at android.app.LoadedApk$ServiceDispatcher.(LoadedApk.java:1554) 06-27 17:37:29.369 E/ActivityThread(15471): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:1446) 06-27 17:37:29.369 E/ActivityThread(15471): at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1610) 06-27 17:37:29.369 E/ActivityThread(15471): at android.app.ContextImpl.bindService(ContextImpl.java:1562) 06-27 17:37:29.369 E/ActivityThread(15471): at android.content.ContextWrapper.bindService(ContextWrapper.java:684) 06-27 17:37:29.369 E/ActivityThread(15471): at at.bitfire.cert4android.CustomCertManager.(CustomCertManager.kt:99) 06-27 17:37:29.369 E/ActivityThread(15471): at com.etesync.syncadapter.HttpClient$Builder.build(HttpClient.kt:181) 06-27 17:37:29.369 E/ActivityThread(15471): at com.etesync.syncadapter.syncadapter.SyncAdapterService$SyncAdapter$RefreshCollections.run$app_release(SyncAdapterService.kt:159) 06-27 17:37:29.369 E/ActivityThread(15471): at com.etesync.syncadapter.syncadapter.AddressBooksSyncAdapterService$AddressBooksSyncAdapter.onPerformSyncDo(AddressBooksSyncAdapterService.kt:58) 06-27 17:37:29.369 E/ActivityThread(15471): at com.etesync.syncadapter.syncadapter.SyncAdapterService$SyncAdapter.onPerformSync(SyncAdapterService.kt:66) 06-27 17:37:29.369 E/ActivityThread(15471): at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:321) ---------

ammarraisafti avatar Jun 27 '19 10:06 ammarraisafti

Thanks for reporting! It indeed looks like a problem. It looks like attempting a retry after a failed creation attempt makes it crash. I'll happily accept a patch for this one, it looks like some basic mishandling of the async tasks.

I agree it needs to be fixed and will hopefully find some time for this soon if I don't get a patch before.

tasn avatar Jun 27 '19 17:06 tasn

Thank you very much for your response. And I really appreciate your work. While you are working on it, I will gladly wait for it.

Best regard.

ammarraisafti avatar Jun 27 '19 17:06 ammarraisafti