Skip to content

Commit 049acba

Browse files
committed
handle invalid regex patterns. close #2
1 parent f19be0c commit 049acba

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

hound.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ func (h *Hound) Sniff(fileName string, hunk *diff.Hunk, warnc chan string, failc
8585
func (h *Hound) Match(pattern string, subject []byte) bool {
8686
r, err := regexp.Compile(pattern)
8787
if err != nil {
88-
return false
88+
panic(err)
8989
}
9090

9191
return r.Match(subject)

main.go

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,15 @@ func main() {
4848
hunks := fileDiff.GetHunks()
4949

5050
for _, hunk := range hunks {
51-
go hound.Sniff(fileName, hunk, warnc, failc, donec)
51+
go func(hunk *diff.Hunk) {
52+
defer func() {
53+
if r := recover(); r != nil {
54+
fmt.Print(color.RedString(fmt.Sprintf("%s\n", r)))
55+
os.Exit(1)
56+
}
57+
}()
58+
hound.Sniff(fileName, hunk, warnc, failc, donec)
59+
}(hunk)
5260
hunkCount++
5361
}
5462
}

0 commit comments

Comments
 (0)