@@ -9,9 +9,11 @@ import (
99 "strings"
1010 "text/template"
1111
12+ "os"
13+
1214 "github.com/Masterminds/sprig"
13- "github.com/go-yaml/yaml"
1415 "go.uber.org/zap"
16+ "gopkg.in/yaml.v2"
1517)
1618
1719type FilterCfg struct {
@@ -115,21 +117,34 @@ func NewEngFromYml(filename string, logger *zap.Logger) (*Eng, error) {
115117 postBan := make ([]* regexp.Regexp , 0 )
116118
117119 for _ , r := range engCfg .PostBan {
118- rxp := regexp .MustCompile (strings .ToLower (r ))
120+ rxp , err := regexp .Compile (strings .ToLower (r ))
121+ if err != nil {
122+ logger .Error ("Error in regex compile: " + err .Error ())
123+ os .Exit (1 )
124+ }
119125 postBan = append (postBan , rxp )
120126 }
121127
122128 urlBan := make ([]* regexp.Regexp , 0 )
123129
124130 for _ , r := range engCfg .UrlBan {
125- rxp := regexp .MustCompile (strings .ToLower (r ))
131+ rxp , err := regexp .Compile (strings .ToLower (r ))
132+ if err != nil {
133+ logger .Error ("Error in regex compile: " + err .Error ())
134+ os .Exit (1 )
135+ }
126136 urlBan = append (urlBan , rxp )
127137 }
128138
129139 filter := make (map [* regexp.Regexp ]FilterTemplate , 0 )
130140
131141 for _ , filterCfg := range engCfg .Filter {
132- rxp := regexp .MustCompile (strings .ToLower (filterCfg .Match ))
142+ rxp , err := regexp .Compile (strings .ToLower (filterCfg .Match ))
143+ if err != nil {
144+ logger .Error ("Error in regex compile: " + err .Error ())
145+ os .Exit (1 )
146+ }
147+
133148 tmpl , err := template .New (filterCfg .Name ).Funcs (sprig .TxtFuncMap ()).Parse (filterCfg .Template )
134149 if err != nil {
135150 logger .Error ("Template parsing error: " + err .Error ())
0 commit comments