diff --git a/kernel/model/import.go b/kernel/model/import.go index 409f1fb1c..d97d189c7 100644 --- a/kernel/model/import.go +++ b/kernel/model/import.go @@ -110,15 +110,16 @@ func ImportSY(zipPath, boxID, toPath string) (err error) { return nil }) - unzipRootPaths, err := filepath.Glob(unzipPath + "/*") + entries, err := os.ReadDir(unzipPath) if nil != err { + logging.LogErrorf("read unzip dir [%s] failed: %s", unzipPath, err) return } - if 1 != len(unzipRootPaths) { - logging.LogErrorf("invalid .sy.zip [%v]", unzipRootPaths) + if 1 != len(entries) { + logging.LogErrorf("invalid .sy.zip [%v]", entries) return errors.New(Conf.Language(199)) } - unzipRootPath := unzipRootPaths[0] + unzipRootPath := filepath.Join(unzipPath, entries[0].Name()) 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)