From be6c8f8a38fc40fbb4568d2ff375433a01c8d36c Mon Sep 17 00:00:00 2001 From: kunfei Date: Sat, 23 Apr 2022 23:29:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/io/legado/app/utils/RegexExtensions.kt | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/io/legado/app/utils/RegexExtensions.kt b/app/src/main/java/io/legado/app/utils/RegexExtensions.kt index 5f0fe41a6..79357fbcc 100644 --- a/app/src/main/java/io/legado/app/utils/RegexExtensions.kt +++ b/app/src/main/java/io/legado/app/utils/RegexExtensions.kt @@ -2,9 +2,8 @@ package io.legado.app.utils import io.legado.app.exception.RegexTimeoutException import io.legado.app.help.CrashHandler -import kotlinx.coroutines.DelicateCoroutinesApi import kotlinx.coroutines.Dispatchers.IO -import kotlinx.coroutines.GlobalScope +import kotlinx.coroutines.MainScope import kotlinx.coroutines.launch import kotlinx.coroutines.suspendCancellableCoroutine import splitties.init.appCtx @@ -14,11 +13,10 @@ import kotlin.coroutines.resume * 带有超时检测的正则替换 * 超时重启apk,线程不能强制结束,只能重启apk */ -@DelicateCoroutinesApi suspend fun CharSequence.replace(regex: Regex, replacement: String, timeout: Long): String { val charSequence = this return suspendCancellableCoroutine { block -> - val scope = GlobalScope.launch(IO) { + val scope = MainScope().launch(IO) { try { val result = regex.replace(charSequence, replacement) block.resume(result)