From 5cec7d645559e31bfd3e1fdaab12f473bad9356c Mon Sep 17 00:00:00 2001 From: dhruv Date: Thu, 13 Aug 2026 15:19:42 +0530 Subject: [PATCH] events: fix goroutine leak with until flag in file backend Signed-off-by: dhruv --- libpod/events/logfile.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/libpod/events/logfile.go b/libpod/events/logfile.go index a39818a1bc..921deb2fa3 100644 --- a/libpod/events/logfile.go +++ b/libpod/events/logfile.go @@ -122,9 +122,15 @@ func (e EventLogFile) Read(ctx context.Context, options ReadOptions) error { return err } go func() { - time.Sleep(time.Until(untilTime)) - if err := t.Stop(); err != nil { - logrus.Errorf("Stopping logger: %v", err) + timer := time.NewTimer(time.Until(untilTime)) + defer timer.Stop() + select { + case <-ctx.Done(): + return + case <-timer.C: + if err := t.Stop(); err != nil { + logrus.Errorf("Stopping logger: %v", err) + } } }() }