File tree Expand file tree Collapse file tree 1 file changed +8
-10
lines changed
Expand file tree Collapse file tree 1 file changed +8
-10
lines changed Original file line number Diff line number Diff line change @@ -12,13 +12,7 @@ type Logger interface {
1212}
1313
1414//nolint:gochecknoglobals
15- var loggerInstance * atomic.Value = defaultLoggerInstance ()
16-
17- func defaultLoggerInstance () * atomic.Value {
18- v := & atomic.Value {}
19- v .Store (noopLogger {})
20- return v
21- }
15+ var loggerInstance atomic.Pointer [Logger ]
2216
2317type noopLogger struct {}
2418
@@ -41,15 +35,19 @@ func (c ConsoleLogger) Errorf(format string, v ...interface{}) {
4135
4236// ClearLogger clears the logger returning to a no-op logger.
4337func ClearLogger () {
44- loggerInstance .Store (noopLogger {} )
38+ loggerInstance .Store (nil )
4539}
4640
4741// SetLogger sets the logger to the provided logger.
4842func SetLogger (l Logger ) {
49- loggerInstance .Store (l )
43+ loggerInstance .Store (& l )
5044}
5145
5246// GetLogger returns the current logger instance.
5347func GetLogger () Logger {
54- return loggerInstance .Load ().(Logger )
48+ logger := loggerInstance .Load ()
49+ if logger == nil {
50+ return noopLogger {}
51+ }
52+ return * logger
5553}
You can’t perform that action at this time.
0 commit comments