From 027d0671aa93dd4c1ad63f205e39b4355cf2232d Mon Sep 17 00:00:00 2001 From: nhas Date: Thu, 28 Nov 2024 18:14:54 +1300 Subject: [PATCH] Fix taking value of type of input, rather than value of input --- internal/data/events.go | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/internal/data/events.go b/internal/data/events.go index c58f107b..412de92d 100644 --- a/internal/data/events.go +++ b/internal/data/events.go @@ -158,19 +158,14 @@ func RegisterEventListener[T any](path string, isPrefix bool, f func(key string, func redact[T any](input T) (redacted []byte) { - current := reflect.TypeOf(input) - if current.Kind() == reflect.Pointer { - current = current.Elem() - } - - values := reflect.ValueOf(current) + values := reflect.ValueOf(input) if values.Kind() == reflect.Pointer { values = values.Elem() } - if current.Kind() == reflect.Struct { - for i := 0; i < current.NumField(); i++ { - _, isSensitive := current.Field(i).Tag.Lookup("sensitive") + if values.Kind() == reflect.Struct { + for i := 0; i < values.NumField(); i++ { + _, isSensitive := values.Type().Field(i).Tag.Lookup("sensitive") if isSensitive { if values.Field(i).CanSet() { values.Field(i).SetZero()