From b7b66eeb200f1bf36e256cd93197687f3c954d75 Mon Sep 17 00:00:00 2001 From: Ugorji Nwoke Date: Sun, 19 Feb 2023 13:34:29 -0500 Subject: [PATCH] codec: set containerState to containerMapKey when encoding interface{} keys of a map in canonical mode Without this, MapKeyAsString option is not supported correctly. Fixes #390 --- codec/encode.go | 1 + 1 file changed, 1 insertion(+) diff --git a/codec/encode.go b/codec/encode.go index 53389b08..70361b5c 100644 --- a/codec/encode.go +++ b/codec/encode.go @@ -893,6 +893,7 @@ func (e *Encoder) kMapCanonical(ti *typeInfo, rv, rvv reflect.Value, keyFn, valF v := &mksbv[i] l := len(mksv) + e.c = containerMapKey e.encodeValue(k, nil) e.atEndOfEncode() e.w().end()