aboutsummaryrefslogtreecommitdiff
path: root/src/encoding/json/encode.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/encoding/json/encode.go')
-rw-r--r--src/encoding/json/encode.go10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/encoding/json/encode.go b/src/encoding/json/encode.go
index 2e1f56f882..0758b2fc9e 100644
--- a/src/encoding/json/encode.go
+++ b/src/encoding/json/encode.go
@@ -600,11 +600,11 @@ func stringEncoder(e *encodeState, v reflect.Value, opts encOpts) {
return
}
if opts.quoted {
- sb, err := Marshal(v.String())
- if err != nil {
- e.error(err)
- }
- e.string(string(sb), opts.escapeHTML)
+ b := make([]byte, 0, v.Len()+2)
+ b = append(b, '"')
+ b = append(b, []byte(v.String())...)
+ b = append(b, '"')
+ e.stringBytes(b, opts.escapeHTML)
} else {
e.string(v.String(), opts.escapeHTML)
}