Return early from DistinctErrorLogger's Printf

This commit is contained in:
bep 2015-04-03 21:16:36 +02:00
parent 99a18b21fc
commit bea5feb34d

View file

@ -162,11 +162,12 @@ type DistinctErrorLogger struct {
func (l *DistinctErrorLogger) Printf(format string, v ...interface{}) { func (l *DistinctErrorLogger) Printf(format string, v ...interface{}) {
logStatement := fmt.Sprintf(format, v...) logStatement := fmt.Sprintf(format, v...)
l.RLock() l.RLock()
logged := l.m[logStatement] if l.m[logStatement] {
l.RUnlock() l.RUnlock()
if logged {
return return
} }
l.RUnlock()
l.Lock() l.Lock()
if !l.m[logStatement] { if !l.m[logStatement] {
jww.ERROR.Print(logStatement) jww.ERROR.Print(logStatement)