diff --git a/kernel/model/import.go b/kernel/model/import.go index 150912a9b..409f1fb1c 100644 --- a/kernel/model/import.go +++ b/kernel/model/import.go @@ -115,12 +115,13 @@ func ImportSY(zipPath, boxID, toPath string) (err error) { return } if 1 != len(unzipRootPaths) { - logging.LogErrorf("invalid .sy.zip") + logging.LogErrorf("invalid .sy.zip [%v]", unzipRootPaths) return errors.New(Conf.Language(199)) } unzipRootPath := unzipRootPaths[0] name := filepath.Base(unzipRootPath) if strings.HasPrefix(name, "data-20") && len("data-20230321175442") == len(name) { + logging.LogErrorf("invalid .sy.zip [unzipRootPath=%s, baseName=%s]", unzipRootPath, name) return errors.New(Conf.Language(199)) } diff --git a/kernel/model/search.go b/kernel/model/search.go index ff260314a..7fc301044 100644 --- a/kernel/model/search.go +++ b/kernel/model/search.go @@ -803,7 +803,7 @@ func replaceTextNode(text *ast.Node, method int, keyword string, replacement str } } else if 3 == method { if nil != r && r.MatchString(string(text.Tokens)) { - newContent := bytes.ReplaceAll(text.Tokens, []byte(keyword), []byte(replacement)) + newContent := []byte(r.ReplaceAllString(string(text.Tokens), replacement)) tree := parse.Inline("", newContent, luteEngine.ParseOptions) if nil == tree.Root.FirstChild { return false diff --git a/kernel/util/misc.go b/kernel/util/misc.go index c319083bf..97c758126 100644 --- a/kernel/util/misc.go +++ b/kernel/util/misc.go @@ -124,7 +124,7 @@ func Convert2Float(s string) (float64, bool) { s = strings.ReplaceAll(s, ",", "") buf := bytes.Buffer{} for _, r := range s { - if unicode.IsDigit(r) || '.' == r { + if unicode.IsDigit(r) || '.' == r || '-' == r { buf.WriteRune(r) } }