From e1d9270fa5cb98988e5b2bf5b0ead3051c49c23a Mon Sep 17 00:00:00 2001 From: bushixuanqi <57338301+bushixuanqi@users.noreply.github.com> Date: Mon, 19 Jul 2021 19:04:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E5=89=8D=E5=88=A4=E6=96=ADMode.js?= =?UTF-8?q?=E9=81=BF=E5=85=8Dmode=E5=80=BC=E8=A2=AB=E8=A6=86=E7=9B=96?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=E7=B1=BB=E5=9E=8B=E5=88=A4=E6=96=AD=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 提前判断Mode.js避免mode值被覆盖导致类型判断错 --- .../java/io/legado/app/model/analyzeRule/AnalyzeRule.kt | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeRule.kt b/app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeRule.kt index f9e0024c0..cf3d3a4ee 100644 --- a/app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeRule.kt +++ b/app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeRule.kt @@ -396,7 +396,7 @@ class AnalyzeRule(val ruleData: RuleDataInterface) : JsExtensions { */ inner class SourceRule internal constructor(ruleStr: String, mainMode: Mode = Mode.Default) { - internal var mode = mainMode + internal var mode: Mode internal var rule: String internal var replaceRegex = "" internal var replacement = "" @@ -409,10 +409,9 @@ class AnalyzeRule(val ruleData: RuleDataInterface) : JsExtensions { private val defaultRuleType = 0 init { - rule = when { - mode == Mode.Js || mode == Mode.Regex -> { //splitSourceRule预先确定了Mode.Js和Mode.Regex两种mode,避免被后面的值覆盖先进行判断 - ruleStr - } + this.mode = mainMode + rule = if(mode == Mode.Js)ruleStr //避免被后面的值覆盖,加个判断 + else when { ruleStr.startsWith("@CSS:", true) -> { mode = Mode.Default ruleStr