From c43f3967471ad3c84ce6fbc7640a068ed3d47a35 Mon Sep 17 00:00:00 2001 From: kunfei Date: Mon, 17 Oct 2022 20:19:10 +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 --- .../main/java/io/legado/app/data/entities/BookChapter.kt | 3 ++- .../main/java/io/legado/app/help/book/ContentProcessor.kt | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/legado/app/data/entities/BookChapter.kt b/app/src/main/java/io/legado/app/data/entities/BookChapter.kt index 47406882d..ba194112c 100644 --- a/app/src/main/java/io/legado/app/data/entities/BookChapter.kt +++ b/app/src/main/java/io/legado/app/data/entities/BookChapter.kt @@ -102,7 +102,8 @@ data class BookChapter( val mDisplayTitle = if (item.isRegex) { displayTitle.replace( item.pattern.toRegex(), - item.replacement + item.replacement, + item.timeoutMillisecond ) } else { displayTitle.replace(item.pattern, item.replacement) diff --git a/app/src/main/java/io/legado/app/help/book/ContentProcessor.kt b/app/src/main/java/io/legado/app/help/book/ContentProcessor.kt index 098684a1f..7153c3d2f 100644 --- a/app/src/main/java/io/legado/app/help/book/ContentProcessor.kt +++ b/app/src/main/java/io/legado/app/help/book/ContentProcessor.kt @@ -9,6 +9,7 @@ import io.legado.app.data.entities.ReplaceRule import io.legado.app.exception.RegexTimeoutException import io.legado.app.help.config.AppConfig import io.legado.app.help.config.ReadBookConfig +import io.legado.app.utils.replace import io.legado.app.utils.stackTraceStr import io.legado.app.utils.toastOnUi import kotlinx.coroutines.CancellationException @@ -133,7 +134,7 @@ class ContentProcessor private constructor( return contents } - fun replaceContent(content: String): String { + suspend fun replaceContent(content: String): String { var mContent = content mContent = mContent.lines().joinToString("\n") { it.trim() } getContentReplaceRules().forEach { item -> @@ -142,7 +143,8 @@ class ContentProcessor private constructor( mContent = if (item.isRegex) { mContent.replace( item.pattern.toRegex(), - item.replacement + item.replacement, + item.timeoutMillisecond ) } else { mContent.replace(item.pattern, item.replacement)