Browse Source

Fix Clash classical rule provider not renaming properly

Tindy X 11 months ago
parent
commit
92f66bf5b5
1 changed files with 2 additions and 2 deletions
  1. 2 2
      src/generator/template/templates.cpp

+ 2 - 2
src/generator/template/templates.cpp

@@ -357,10 +357,10 @@ int renderClashScript(YAML::Node &base_rule, std::vector<RulesetContent> &rulese
             if(x.rule_type == RULESET_CLASH_IPCIDR || x.rule_type == RULESET_CLASH_DOMAIN || x.rule_type == RULESET_CLASH_CLASSICAL)
             {
                 //rule_name = std::to_string(hash_(rule_group + rule_path));
-                rule_name = old_rule_name = findFileName(rule_path);
+                rule_name = old_rule_name = urlDecode(findFileName(rule_path));
                 int idx = 2;
                 while(std::find(groups.begin(), groups.end(), rule_name) != groups.end())
-                    rule_name = old_rule_name + "_" + std::to_string(idx++);
+                    rule_name = old_rule_name + " " + std::to_string(idx++);
                 names[rule_name] = rule_group;
                 urls[rule_name] = "*" + rule_path;
                 rule_type[rule_name] = x.rule_type;