@@ -32,13 +32,12 @@ var (
32
32
isGoCriticDebug = logutils .HaveDebugTag (logutils .DebugKeyGoCritic )
33
33
)
34
34
35
- func NewGoCritic (settings * config.GoCriticSettings , cfg * config. Config ) * goanalysis.Linter {
35
+ func NewGoCritic (settings * config.GoCriticSettings ) * goanalysis.Linter {
36
36
var mu sync.Mutex
37
37
var resIssues []goanalysis.Issue
38
38
39
39
wrapper := & goCriticWrapper {
40
- getConfigDir : cfg .GetConfigDir , // Config directory is filled after calling this constructor.
41
- sizes : types .SizesFor ("gc" , runtime .GOARCH ),
40
+ sizes : types .SizesFor ("gc" , runtime .GOARCH ),
42
41
}
43
42
44
43
analyzer := & analysis.Analyzer {
@@ -71,7 +70,9 @@ Dynamic rules are written declaratively with AST patterns, filters, report messa
71
70
nil ,
72
71
).
73
72
WithContextSetter (func (context * linter.Context ) {
74
- wrapper .init (settings , context .Log )
73
+ wrapper .configDir = context .Cfg .GetConfigDir ()
74
+
75
+ wrapper .init (context .Log , settings )
75
76
}).
76
77
WithIssuesReporter (func (* linter.Context ) []goanalysis.Issue {
77
78
return resIssues
@@ -81,12 +82,12 @@ Dynamic rules are written declaratively with AST patterns, filters, report messa
81
82
82
83
type goCriticWrapper struct {
83
84
settingsWrapper * goCriticSettingsWrapper
84
- getConfigDir func () string
85
+ configDir string
85
86
sizes types.Sizes
86
87
once sync.Once
87
88
}
88
89
89
- func (w * goCriticWrapper ) init (settings * config. GoCriticSettings , logger logutils. Log ) {
90
+ func (w * goCriticWrapper ) init (logger logutils. Log , settings * config. GoCriticSettings ) {
90
91
if settings == nil {
91
92
return
92
93
}
@@ -206,7 +207,7 @@ func (w *goCriticWrapper) normalizeCheckerParamsValue(p any) any {
206
207
return rv .Bool ()
207
208
case reflect .String :
208
209
// Perform variable substitution.
209
- return strings .ReplaceAll (rv .String (), "${configDir}" , w .getConfigDir () )
210
+ return strings .ReplaceAll (rv .String (), "${configDir}" , w .configDir )
210
211
default :
211
212
return p
212
213
}
0 commit comments