From a71ef1bab09c113f5066f61167f4825db682183b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Papp?= Date: Tue, 2 Jun 2026 11:09:20 +0200 Subject: [PATCH] [client/ui] Guard session expiry updates to log only on change --- client/ui/tray_session.go | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/client/ui/tray_session.go b/client/ui/tray_session.go index 194cf834f..be6a55428 100644 --- a/client/ui/tray_session.go +++ b/client/ui/tray_session.go @@ -60,20 +60,23 @@ func (t *Tray) applySessionExpiry(deadline *time.Time, connected bool) { d = *deadline } - switch { - case deadline == nil: - log.Infof("tray applySessionExpiry: deadline= connected=%v → row hidden", connected) - case deadline.IsZero(): - log.Infof("tray applySessionExpiry: deadline= connected=%v → row hidden", connected) - default: - log.Infof("tray applySessionExpiry: deadline=%s (in %s) connected=%v", - deadline.Format(time.RFC3339), time.Until(*deadline), connected) - } - t.sessionMu.Lock() + changed := !t.sessionExpiresAt.Equal(d) t.sessionExpiresAt = d t.sessionMu.Unlock() + if changed { + switch { + case deadline == nil: + log.Infof("tray applySessionExpiry: deadline= connected=%v → row hidden", connected) + case deadline.IsZero(): + log.Infof("tray applySessionExpiry: deadline= connected=%v → row hidden", connected) + default: + log.Infof("tray applySessionExpiry: deadline=%s (in %s) connected=%v", + deadline.Format(time.RFC3339), time.Until(*deadline), connected) + } + } + if t.sessionExpiresItem == nil { return }