提前判断Mode.js避免mode值被覆盖导致类型判断错

提前判断Mode.js避免mode值被覆盖导致类型判断错
pull/1155/head
bushixuanqi 4 years ago
parent 1b213b974b
commit e1d9270fa5
  1. 9
      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) { 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 rule: String
internal var replaceRegex = "" internal var replaceRegex = ""
internal var replacement = "" internal var replacement = ""
@ -409,10 +409,9 @@ class AnalyzeRule(val ruleData: RuleDataInterface) : JsExtensions {
private val defaultRuleType = 0 private val defaultRuleType = 0
init { init {
rule = when { this.mode = mainMode
mode == Mode.Js || mode == Mode.Regex -> { //splitSourceRule预先确定了Mode.Js和Mode.Regex两种mode,避免被后面的值覆盖先进行判断 rule = if(mode == Mode.Js)ruleStr //避免被后面的值覆盖,加个判断
ruleStr else when {
}
ruleStr.startsWith("@CSS:", true) -> { ruleStr.startsWith("@CSS:", true) -> {
mode = Mode.Default mode = Mode.Default
ruleStr ruleStr

Loading…
Cancel
Save