Skip to content

[Bug] Unexpected Behavior of "Pull to Refresh" in Module Scope #28

@FZQ0003

Description

@FZQ0003

Steps to reproduce/复现步骤

  1. Select an patched app and click "Module scope" in the Manager.
  2. Pull to refresh, then all checkboxes of previously activated modules will become "unchecked".
  3. If click OK or exit, the scope will not be changed.
  4. If select other modules and click OK, these modules will be added to the scope.
  5. If reselect "unchecked" modules and click OK, the Manager will crash.
video_2025-02-16_00-37-34.mp4

Expected behaviour/预期行为

The behavior of "Pull to Refresh" should be the same as entering "Module Scope".

Actual behaviour/实际行为

All checkboxes of previously activated modules become "unchecked". See "Steps to reproduce" for details.

Xposed Module List/Xposed 模块列表

-

LSPatch version/LSPatch 版本

CI Build 9703dc4 (debug)

Android version/Android 版本

15

Shizuku version/Shizuku 版本

N/A

Version requirement/版本要求

  • I am using latest debug CI version of LSPatch and enable verbose log/我正在使用最新 CI 调试版本且启用详细日志

Apk file/Apk 文件

Logs/日志

Here is the output of adb logcat after crashed.

02-16 00:33:34.400  9941  9941 E AndroidRuntime: FATAL EXCEPTION: main
02-16 00:33:34.400  9941  9941 E AndroidRuntime: Process: org.lsposed.lspatch, PID: 9941
02-16 00:33:34.400  9941  9941 E AndroidRuntime: android.database.sqlite.SQLiteConstraintException: UNIQUE constraint failed: Scope.appPkgName, Scope.modulePkgName (code 1555 SQLITE_CONSTRAINT_PRIMARYKEY)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at android.database.sqlite.SQLiteConnection.nativeExecuteForLastInsertedRowId(Native Method)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at android.database.sqlite.SQLiteConnection.executeForLastInsertedRowId(SQLiteConnection.java:988)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at android.database.sqlite.SQLiteSession.executeForLastInsertedRowId(SQLiteSession.java:814)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at android.database.sqlite.SQLiteStatement.executeInsert(SQLiteStatement.java:89)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at androidx.sqlite.db.framework.FrameworkSQLiteStatement.executeInsert(FrameworkSQLiteStatement.kt:42)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at androidx.room.EntityInsertionAdapter.insert(EntityInsertionAdapter.kt:51)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at org.lsposed.lspatch.database.dao.ScopeDao_Impl$3.call(ScopeDao_Impl.java:79)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at org.lsposed.lspatch.database.dao.ScopeDao_Impl$3.call(ScopeDao_Impl.java:73)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at androidx.room.CoroutinesRoom$Companion$execute$2.invokeSuspend(CoroutinesRoom.kt:64)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at androidx.room.TransactionExecutor.execute$lambda$1$lambda$0(TransactionExecutor.kt:36)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at androidx.room.TransactionExecutor.$r8$lambda$FZWr2PGmP3sgXLCiri-DCcePXSs(Unknown Source:0)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at androidx.room.TransactionExecutor$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        at java.lang.Thread.run(Thread.java:1012)
02-16 00:33:34.400  9941  9941 E AndroidRuntime:        Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [androidx.compose.ui.platform.MotionDurationScaleImpl@611f6fb, androidx.compose.runtime.BroadcastFrameClock@8d318, StandaloneCoroutine{Cancelling}@a36171, AndroidUiDispatcher@ba71b56]

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions