android icon indicating copy to clipboard operation
android copied to clipboard

[BUG] [New arch] Crash when removing account

Open jesmrec opened this issue 2 years ago • 0 comments

Steps to reproduce

  1. Add account
  2. Go to Manage Accounts and remove the account

Actual behaviour

App crashes

Expected behaviour

No crash

Crash is very long, i rescued these two interesting fragments:

2022-08-02 13:48:03.155 25970-25970/com.owncloud.android.debug E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.owncloud.android.debug, PID: 25970
    java.lang.IllegalStateException: Cannot access database on the main thread since it may potentially lock the UI for a long period of time.
        at androidx.room.RoomDatabase.assertNotMainThread(RoomDatabase.java:469)
        at androidx.room.SharedSQLiteStatement.assertNotMainThread(SharedSQLiteStatement.java:60)
        at androidx.room.SharedSQLiteStatement.acquire(SharedSQLiteStatement.java:86)
        at com.owncloud.android.data.transfers.db.TransferDao_Impl.deleteTransfersWithAccountName(TransferDao_Impl.java:198)
        at com.owncloud.android.data.transfers.datasources.implementation.OCLocalTransferDataSource.removeAllTransfersFromAccount(OCLocalTransferDataSource.kt:59)
        at com.owncloud.android.data.transfers.repository.OCTransferRepository.removeAllTransfersFromAccount(OCTransferRepository.kt:60)
        at com.owncloud.android.usecases.transfers.uploads.CancelUploadsFromAccountUseCase.run(CancelUploadsFromAccountUseCase.kt:37)
        at com.owncloud.android.usecases.transfers.uploads.CancelUploadsFromAccountUseCase.run(CancelUploadsFromAccountUseCase.kt:29)
        at com.owncloud.android.domain.BaseUseCase.execute(BaseUseCase.kt:30)
        at com.owncloud.android.ui.activity.ManageAccountsActivity.run(ManageAccountsActivity.java:305)
        at android.accounts.AccountManager$Future2Task$1.run(AccountManager.java:2556)
        at android.os.Handler.handleCallback(Handler.java:938)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loopOnce(Looper.java:201)
        at android.os.Looper.loop(Looper.java:288)
        at android.app.ActivityThread.main(ActivityThread.java:7870)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
2022-08-02 13:48:04.458 28146-28146/com.owncloud.android.debug E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.owncloud.android.debug, PID: 28146
    java.lang.NullPointerException: account ?: AccountUtils.…extProvider.getContext()) must not be null
        at com.owncloud.android.presentation.ui.files.filelist.MainFileListViewModel.composeFileListUiState(MainFileListViewModel.kt:257)
        at com.owncloud.android.presentation.ui.files.filelist.MainFileListViewModel.composeFileListUiState$default(MainFileListViewModel.kt:242)
        at com.owncloud.android.presentation.ui.files.filelist.MainFileListViewModel$_folderContentLiveData$lambda-1$$inlined$map$1.apply(Transformations.kt:89)
        at androidx.lifecycle.Transformations$1.onChanged(Transformations.java:76)
        at androidx.lifecycle.MediatorLiveData$Source.onChanged(MediatorLiveData.java:152)
        at androidx.lifecycle.LiveData.considerNotify(LiveData.java:133)
        at androidx.lifecycle.LiveData.dispatchingValue(LiveData.java:151)
        at androidx.lifecycle.LiveData.setValue(LiveData.java:309)
        at androidx.lifecycle.MutableLiveData.setValue(MutableLiveData.java:50)
        at androidx.lifecycle.Transformations$1.onChanged(Transformations.java:76)
        at androidx.lifecycle.MediatorLiveData$Source.onChanged(MediatorLiveData.java:152)
        at androidx.lifecycle.LiveData.considerNotify(LiveData.java:133)
        at androidx.lifecycle.LiveData.dispatchingValue(LiveData.java:151)
        at androidx.lifecycle.LiveData.setValue(LiveData.java:309)
        at androidx.lifecycle.LiveData$1.run(LiveData.java:93)
        at android.os.Handler.handleCallback(Handler.java:938)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loopOnce(Looper.java:201)
        at android.os.Looper.loop(Looper.java:288)
        at android.app.ActivityThread.main(ActivityThread.java:7870)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)

jesmrec avatar Jul 29 '22 09:07 jesmrec