From a9f1b584a99cb8c612e5f4775fa8fe3ff6dda659 Mon Sep 17 00:00:00 2001 From: neildwu Date: Sat, 17 Jul 2021 10:41:01 +0800 Subject: [PATCH 1/2] use Compile instead of MustCompile to avoid panic --- processor/file.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/processor/file.go b/processor/file.go index 15e67c0b..e9877c0c 100644 --- a/processor/file.go +++ b/processor/file.go @@ -66,7 +66,10 @@ func NewDirectoryWalker(output chan<- *FileJob) *DirectoryWalker { output: output, } for _, exclude := range Exclude { - directoryWalker.excludes = append(directoryWalker.excludes, regexp.MustCompile(exclude)) + regexpResult, err := regexp.Compile(exclude) + if err == nil { + directoryWalker.excludes = append(directoryWalker.excludes, regexpResult) + } } directoryWalker.buffer = cuba.New(directoryWalker.Walk, cuba.NewStack()) From 2ae31e6b7be13acbf7a9ff38665b4fe8fed77057 Mon Sep 17 00:00:00 2001 From: neildwu Date: Tue, 20 Jul 2021 16:08:51 +0800 Subject: [PATCH 2/2] print error log for else situation --- processor/file.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/processor/file.go b/processor/file.go index 11f2019b..c0864d02 100644 --- a/processor/file.go +++ b/processor/file.go @@ -69,6 +69,8 @@ func NewDirectoryWalker(output chan<- *FileJob) *DirectoryWalker { regexpResult, err := regexp.Compile(exclude) if err == nil { directoryWalker.excludes = append(directoryWalker.excludes, regexpResult) + } else { + printError(err.Error()) } }