From d9603ffdb5fb382016621b177f54a066b22ef776 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Purple=5F=CE=9Eye=E2=84=A2?= <168314373+Purple-EyeZ@users.noreply.github.com> Date: Fri, 30 Jan 2026 05:09:47 +0100 Subject: [PATCH] fix(modules/HookScriptLoaderModule): don't use cache when custom bundle URL is enabled --- .../xposed/modules/HookScriptLoaderModule.kt | 13 ++++++++----- .../github/revenge/xposed/modules/UpdaterModule.kt | 2 ++ 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/app/src/main/kotlin/io/github/revenge/xposed/modules/HookScriptLoaderModule.kt b/app/src/main/kotlin/io/github/revenge/xposed/modules/HookScriptLoaderModule.kt index 4e239f9..930f2c8 100644 --- a/app/src/main/kotlin/io/github/revenge/xposed/modules/HookScriptLoaderModule.kt +++ b/app/src/main/kotlin/io/github/revenge/xposed/modules/HookScriptLoaderModule.kt @@ -83,15 +83,18 @@ object HookScriptLoaderModule : Module() { runBlocking { val ready = async { HookStateHolder.readyDeferred.join() } + val isCustomUrl = UpdaterModule.isCustomUrlEnabled - if (mainScript.exists()) { + if (!mainScript.exists() || isCustomUrl) { + val reason = if (isCustomUrl) "Custom URL enabled" else "Main script does not exist" + Log.i("$reason, downloading before load...") + val download = + async { UpdaterModule.downloadScript(showUpdateDialog = false).join() } + awaitAll(ready, download) + } else { Log.i("Main script exists, updating in background...") UpdaterModule.downloadScript(showUpdateDialog = true) ready.await() - } else { - Log.i("Main script does not exist, downloading before load...") - val download = async { UpdaterModule.downloadScript(showUpdateDialog = false).join() } - awaitAll(ready, download) } } diff --git a/app/src/main/kotlin/io/github/revenge/xposed/modules/UpdaterModule.kt b/app/src/main/kotlin/io/github/revenge/xposed/modules/UpdaterModule.kt index d5d439a..498fc8d 100644 --- a/app/src/main/kotlin/io/github/revenge/xposed/modules/UpdaterModule.kt +++ b/app/src/main/kotlin/io/github/revenge/xposed/modules/UpdaterModule.kt @@ -43,6 +43,8 @@ data class LoaderConfig( */ object UpdaterModule : Module() { private lateinit var config: LoaderConfig + val isCustomUrlEnabled: Boolean + get() = config.customLoadUrl.enabled private val scope = CoroutineScope(SupervisorJob() + Dispatchers.IO) private var lastActivity: WeakReference? = null