From 85e08f0ee477d746ecf57b64ecee530ecc6a61de Mon Sep 17 00:00:00 2001 From: ac79b0c6 <105047743+ac79b0c6@users.noreply.github.com> Date: Sat, 31 Dec 2022 12:10:53 +0800 Subject: update mkvtool:mkvlib bump to v2.2.3 --- mkvtool/main.go | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) (limited to 'mkvtool/main.go') diff --git a/mkvtool/main.go b/mkvtool/main.go index 362f8ed..cb597dd 100644 --- a/mkvtool/main.go +++ b/mkvtool/main.go @@ -11,13 +11,14 @@ import ( "net/http" "os" "path" + "path/filepath" "regexp" "runtime" "strings" ) const appName = "MKV Tool" -const appVer = "v4.2.4" +const appVer = "v4.2.5" const tTitle = appName + " " + appVer var appFN = fmt.Sprintf("%s %s %s/%s", appName, appVer, runtime.GOOS, runtime.GOARCH) @@ -272,15 +273,29 @@ func main() { return } if m { - if !processer.MakeMKVs(s, data, dist, sl, st, nil) { + if !processer.MakeMKVs(s, data, dist, sl, st, true, nil) { ec++ } return } - if !processer.DumpMKVs(s, data, true, nil) { - ec++ - } else if !processer.MakeMKVs(s, data, dist, sl, st, nil) { - ec++ + s, _ = filepath.Abs(s) + dist, _ = filepath.Abs(dist) + files, _ := findPath(s, `\.mkv$`) + for _, item := range files { + if strings.HasPrefix(item, dist) { + continue + } + p := strings.TrimPrefix(item, s) + _d, _, _, _f := splitPath(p) + p = path.Join(data, _d, _f) + if !processer.DumpMKV(item, p, true, nil) { + ec++ + } + } + if ec == 0 { + if !processer.MakeMKVs(s, data, dist, sl, st, true, nil) { + ec++ + } } return } else { -- cgit v1.2.1