diff options
author | Andy Pan <panjf2000@gmail.com> | 2023-08-18 11:54:48 +0800 |
---|---|---|
committer | Gopher Robot <gobot@golang.org> | 2023-08-18 21:40:31 +0000 |
commit | 3419a0aec1a664b32c7b9b741c69b90dcb89bb4b (patch) | |
tree | c60a9ed59aa61db71cf4c8044185f68bec53afaa /src/encoding | |
parent | ce16086345435d85906de31ea4af486b69bae895 (diff) | |
download | go-3419a0aec1a664b32c7b9b741c69b90dcb89bb4b.tar.gz go-3419a0aec1a664b32c7b9b741c69b90dcb89bb4b.zip |
encoding/json: use base64.Encoding.AppendEncode
For #53693
Change-Id: I6a428a4a10a2e2efa03296f539e190f0743c1f46
Reviewed-on: https://go-review.googlesource.com/c/go/+/520755
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Reviewed-by: Joseph Tsai <joetsai@digital-static.net>
Reviewed-by: Ian Lance Taylor <iant@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org>
Run-TryBot: Ian Lance Taylor <iant@google.com>
Auto-Submit: Ian Lance Taylor <iant@google.com>
Run-TryBot: Andy Pan <panjf2000@gmail.com>
Diffstat (limited to 'src/encoding')
-rw-r--r-- | src/encoding/json/encode.go | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/src/encoding/json/encode.go b/src/encoding/json/encode.go index 536ec21f4f..38b98a57f7 100644 --- a/src/encoding/json/encode.go +++ b/src/encoding/json/encode.go @@ -781,15 +781,11 @@ func encodeByteSlice(e *encodeState, v reflect.Value, _ encOpts) { e.WriteString("null") return } - s := v.Bytes() - encodedLen := base64.StdEncoding.EncodedLen(len(s)) - e.Grow(len(`"`) + encodedLen + len(`"`)) - // TODO(https://go.dev/issue/53693): Use base64.Encoding.AppendEncode. + s := v.Bytes() b := e.AvailableBuffer() b = append(b, '"') - base64.StdEncoding.Encode(b[len(b):][:encodedLen], s) - b = b[:len(b)+encodedLen] + b = base64.StdEncoding.AppendEncode(b, s) b = append(b, '"') e.Write(b) } |