Skip to content

App crashes when moving or deleting files #16191

@geeronzero

Description

@geeronzero

⚠️ Before posting ⚠️

  • This is a bug, not a question or an enhancement.
  • I've searched for similar issues and didn't find a duplicate.
  • I've written a clear and descriptive title for this issue, not just "Bug" or "Crash".
  • I agree to follow Nextcloud's Code of Conduct.

Steps to reproduce

  1. Open folder with thousands of images;
  2. Select one or multiple files (the effect is guaranteed if some chosen files not seen at screen);
  3. Move files to another folder or delete them (at first case the problem occures more often)

Expected behaviour

Files should be moved or removed.

Actual behaviour

The app crashes

Android version

10

Device brand and model

Asus zb602kl

Stock or custom OS?

Stock

Nextcloud android app version

3.34.1

Nextcloud server version

32.0.1

Using a reverse proxy?

No

Android logs

Cause of error

Exception in thread "main" java.lang.RuntimeException: Unable to resume activity {com.nextcloud.client/com.owncloud.android.ui.activity.FileDisplayActivity}: java.lang.IllegalStateException: Couldn't read row 756, col 20 from CursorWindow.  Make sure the Cursor is initialized correctly before accessing data from it.
    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4206)
    at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4238)
    at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:52)
    at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:176)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2017)
    at android.os.Handler.dispatchMessage(Handler.java:107)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7397)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:935)
Caused by: Exception in thread "main" java.lang.IllegalStateException: Couldn't read row 756, col 20 from CursorWindow.  Make sure the Cursor is initialized correctly before accessing data from it.
    at android.database.CursorWindow.nativeGetLong(Native Method)
    at android.database.CursorWindow.getLong(CursorWindow.java:542)
    at android.database.AbstractWindowedCursor.getLong(AbstractWindowedCursor.java:77)
    at androidx.room.driver.SupportSQLiteStatement$SupportAndroidSQLiteStatement.getLong(SupportSQLiteStatement.android.kt:190)
    at com.nextcloud.client.database.dao.FileDao_Impl.getFolderContent$lambda$0(FileDao_Impl.kt:2929)
    at com.nextcloud.client.database.dao.FileDao_Impl.$r8$lambda$HH3Vt0aXJGuStEBTT9L2wVpzKrk(Unknown Source:0)
    at com.nextcloud.client.database.dao.FileDao_Impl$$ExternalSyntheticLambda15.invoke(D8$$SyntheticClass:0)
    at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1$invokeSuspend$$inlined$internalPerform$1.invokeSuspend(DBUtil.kt:68)
    at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1$invokeSuspend$$inlined$internalPerform$1.invoke(Unknown Source:8)
    at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1$invokeSuspend$$inlined$internalPerform$1.invoke(Unknown Source:4)
    at androidx.room.driver.SupportSQLiteConnectionPool.useConnection(SupportSQLiteConnectionPool.android.kt:42)
    at androidx.room.RoomConnectionManager.useConnection(RoomConnectionManager.android.kt:126)
    at androidx.room.RoomDatabase.useConnection$room_runtime_release(RoomDatabase.android.kt:593)
    at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1.invokeSuspend(DBUtil.android.kt:247)
    at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1.invoke(Unknown Source:8)
    at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1.invoke(Unknown Source:4)
    at androidx.room.coroutines.RunBlockingUninterruptible_androidKt$runBlockingUninterruptible$1$1.invokeSuspend(RunBlockingUninterruptible.android.kt:52)
    at androidx.room.coroutines.RunBlockingUninterruptible_androidKt$runBlockingUninterruptible$1$1.invoke(Unknown Source:8)
    at androidx.room.coroutines.RunBlockingUninterruptible_androidKt$runBlockingUninterruptible$1$1.invoke(Unknown Source:4)
    at kotlinx.coroutines.intrinsics.UndispatchedKt.startCoroutineUndispatched(Undispatched.kt:27)
    at kotlinx.coroutines.CoroutineStart.invoke(CoroutineStart.kt:90)
    at kotlinx.coroutines.AbstractCoroutine.start(AbstractCoroutine.kt:123)
    at kotlinx.coroutines.BuildersKt__Builders_commonKt.launch(Builders.common.kt:52)
    at kotlinx.coroutines.BuildersKt.launch(Unknown Source:1)
    at androidx.room.coroutines.RunBlockingUninterruptible_androidKt$runBlockingUninterruptible$1.invokeSuspend(RunBlockingUninterruptible.android.kt:51)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:34)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
    at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:277)
    at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:95)
    at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:69)
    at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source:1)
    at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:48)
    at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source:1)
    at androidx.room.coroutines.RunBlockingUninterruptible_androidKt.runBlockingUninterruptible(RunBlockingUninterruptible.android.kt:45)
    at androidx.room.util.DBUtil__DBUtil_androidKt.performBlocking(DBUtil.android.kt:69)
    at androidx.room.util.DBUtil.performBlocking(Unknown Source:1)
    at com.nextcloud.client.database.dao.FileDao_Impl.getFolderContent(FileDao_Impl.kt:2741)
    at com.owncloud.android.datamodel.FileDataStorageManager.getFolderContent(FileDataStorageManager.java:1176)
    at com.owncloud.android.datamodel.FileDataStorageManager.getFolderContent(FileDataStorageManager.java:458)
    at com.owncloud.android.ui.adapter.OCFileListAdapter.swapDirectory(OCFileListAdapter.java:882)
    at com.owncloud.android.ui.fragment.OCFileListFragment.listDirectory(OCFileListFragment.java:1588)
    at com.owncloud.android.ui.fragment.OCFileListFragment.listDirectory(OCFileListFragment.java:1537)
    at com.owncloud.android.ui.fragment.OCFileListFragment.listDirectory(OCFileListFragment.java:1526)
    at com.owncloud.android.ui.activity.FileDisplayActivity.updateListOfFilesFragment(FileDisplayActivity.kt:808)
    at com.owncloud.android.ui.activity.FileDisplayActivity.onResume(FileDisplayActivity.kt:1304)
    at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1454)
    at android.app.Activity.performResume(Activity.java:7939)
    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4196)
    at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4238)
    at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:52)
    at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:176)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2017)
    at android.os.Handler.dispatchMessage(Handler.java:107)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7397)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:935)

App information

  • ID: com.nextcloud.client
  • Version: 30340190
  • Build flavor: generic

Device information

  • Brand: asus
  • Device: ASUS_X00T_6
  • Model: ZB602KL
  • Id: QKQ1
  • Product: RU_X00TD

Firmware

  • SDK: 29
  • Release: 10
  • Incremental: 17.2017.2012.438-20201203

Server error logs

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions