mirror of https://github.com/tidwall/gjson.git
Merge pull request #348 from V02460/json_string
Encode \b and \f in JSON string as themselves
This commit is contained in:
commit
711c6fe9ec
4
gjson.go
4
gjson.go
|
@ -1926,6 +1926,10 @@ func AppendJSONString(dst []byte, s string) []byte {
|
||||||
if s[i] < ' ' {
|
if s[i] < ' ' {
|
||||||
dst = append(dst, '\\')
|
dst = append(dst, '\\')
|
||||||
switch s[i] {
|
switch s[i] {
|
||||||
|
case '\b':
|
||||||
|
dst = append(dst, 'b')
|
||||||
|
case '\f':
|
||||||
|
dst = append(dst, 'f')
|
||||||
case '\n':
|
case '\n':
|
||||||
dst = append(dst, 'n')
|
dst = append(dst, 'n')
|
||||||
case '\r':
|
case '\r':
|
||||||
|
|
|
@ -2578,6 +2578,7 @@ func TestJSONString(t *testing.T) {
|
||||||
testJSONString(t, s)
|
testJSONString(t, s)
|
||||||
testJSONString(t, "R\xfd\xfc\a!\x82eO\x16?_\x0f\x9ab\x1dr")
|
testJSONString(t, "R\xfd\xfc\a!\x82eO\x16?_\x0f\x9ab\x1dr")
|
||||||
testJSONString(t, "_\xb9\v\xad\xb3|X!\xb6\xd9U&\xa4\x1a\x95\x04")
|
testJSONString(t, "_\xb9\v\xad\xb3|X!\xb6\xd9U&\xa4\x1a\x95\x04")
|
||||||
|
testJSONString(t, "\b\f")
|
||||||
rng := rand.New(rand.NewSource(time.Now().UnixNano()))
|
rng := rand.New(rand.NewSource(time.Now().UnixNano()))
|
||||||
start := time.Now()
|
start := time.Now()
|
||||||
var buf [16]byte
|
var buf [16]byte
|
||||||
|
|
Loading…
Reference in New Issue