chore: better converter

This commit is contained in:
wwqgtxx
2024-07-27 23:54:28 +08:00
parent 4f8a5a5f54
commit 1db3e4583b
3 changed files with 15 additions and 1 deletions

View File

@@ -3,6 +3,7 @@ package provider
import (
"errors"
"io"
"strings"
"github.com/metacubex/mihomo/component/trie"
C "github.com/metacubex/mihomo/constant"
@@ -43,6 +44,10 @@ func (d *domainStrategy) Reset() {
}
func (d *domainStrategy) Insert(rule string) {
if strings.ContainsRune(rule, '/') {
log.Warnln("invalid domain:[%s]", rule)
return
}
err := d.domainTrie.Insert(rule, struct{}{})
if err != nil {
log.Warnln("invalid domain:[%s]", rule)

View File

@@ -2,6 +2,7 @@ package provider
import (
"encoding/binary"
"errors"
"io"
"os"
@@ -16,6 +17,9 @@ func ConvertToMrs(buf []byte, behavior P.RuleBehavior, format P.RuleFormat, w io
if err != nil {
return err
}
if strategy.Count() == 0 {
return errors.New("empty rule")
}
if _strategy, ok := strategy.(mrsRuleStrategy); ok {
var encoder *zstd.Encoder
encoder, err = zstd.NewWriter(w)