From 5842b1fa321e790cfe31c1cd4bd9bc103201cec7 Mon Sep 17 00:00:00 2001 From: ccoVeille <3875889+ccoVeille@users.noreply.github.com> Date: Wed, 19 Nov 2025 16:39:25 +0100 Subject: [PATCH] chore: always display the last item in logger if the number of arguments is odd. --- logging/legacy.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/logging/legacy.go b/logging/legacy.go index 6a290239..0bfc64fd 100644 --- a/logging/legacy.go +++ b/logging/legacy.go @@ -18,10 +18,13 @@ func (l *legacyLoggerAdapter) structuredToPrintf(msg string, v ...any) (string, var args []any for i := 0; i < len(v); i += 2 { + format += " %v=%v" if i+1 >= len(v) { + // Odd number of arguments, append a placeholder for the missing value + // adapted from https://cs.opensource.google/go/go/+/master:src/log/slog/record.go;l=160-182;drc=8c41a482f9b7a101404cd0b417ac45abd441e598 + args = append(args, "!BADKEY", v[i]) break } - format += " %v=%v" args = append(args, v[i], v[i+1]) }