diff options
Diffstat (limited to 'vendor/github.com/bytedance/sonic/internal/encoder/primitives.go')
-rw-r--r-- | vendor/github.com/bytedance/sonic/internal/encoder/primitives.go | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/vendor/github.com/bytedance/sonic/internal/encoder/primitives.go b/vendor/github.com/bytedance/sonic/internal/encoder/primitives.go index 0f3c40881..94f1c3dc6 100644 --- a/vendor/github.com/bytedance/sonic/internal/encoder/primitives.go +++ b/vendor/github.com/bytedance/sonic/internal/encoder/primitives.go @@ -23,6 +23,7 @@ import ( `github.com/bytedance/sonic/internal/jit` `github.com/bytedance/sonic/internal/native` + `github.com/bytedance/sonic/internal/native/types` `github.com/bytedance/sonic/internal/rt` ) @@ -73,15 +74,11 @@ func encodeTypedPointer(buf *[]byte, vt *rt.GoType, vp *unsafe.Pointer, sb *_Sta return err } else if vt.Indirect() { rt.MoreStack(_FP_size + native.MaxFrameSize) - rt.StopProf() err := fn(buf, *vp, sb, fv) - rt.StartProf() return err } else { rt.MoreStack(_FP_size + native.MaxFrameSize) - rt.StopProf() err := fn(buf, unsafe.Pointer(vp), sb, fv) - rt.StartProf() return err } } @@ -123,8 +120,8 @@ func htmlEscape(dst []byte, src []byte) []byte { dbuf := (*rt.GoSlice)(unsafe.Pointer(&dst)) /* grow dst if it is shorter */ - if cap(dst) - len(dst) < len(src) + native.BufPaddingSize { - cap := len(src) * 3 / 2 + native.BufPaddingSize + if cap(dst) - len(dst) < len(src) + types.BufPaddingSize { + cap := len(src) * 3 / 2 + types.BufPaddingSize *dbuf = growslice(typeByte, *dbuf, cap) } |