From a469dd43727b80dd859c61c502f0c206e790da7d Mon Sep 17 00:00:00 2001 From: Raja Subramanian Date: Sat, 29 Aug 2026 18:05:01 +0530 Subject: [PATCH] Prevent nil deref if a deferrer reset happned just after a resolve. (#1749) * Prevent nil deref if a deferrer reset happned just after a resolve. * variable --- logger/zaputil/deferrer.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/logger/zaputil/deferrer.go b/logger/zaputil/deferrer.go index 57ea5a84c..dad28b0ae 100644 --- a/logger/zaputil/deferrer.go +++ b/logger/zaputil/deferrer.go @@ -48,12 +48,17 @@ func (b *Deferrer) buffer(core zapcore.Core, ent zapcore.Entry, fields []zapcore } func (b *Deferrer) flush() { + pfields := b.fields.Load() + if pfields == nil { + return + } + b.mu.Lock() writes := b.writes b.writes = nil b.mu.Unlock() - fields := slices.Clone(*b.fields.Load()) + fields := slices.Clone(*pfields) n := len(fields) for _, w := range writes {