summaryrefslogtreecommitdiff
path: root/libgo/go/json/decode.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/json/decode.go')
-rw-r--r--libgo/go/json/decode.go10
1 files changed, 5 insertions, 5 deletions
diff --git a/libgo/go/json/decode.go b/libgo/go/json/decode.go
index b6c575cc844..ff91dd83c33 100644
--- a/libgo/go/json/decode.go
+++ b/libgo/go/json/decode.go
@@ -344,7 +344,7 @@ func (d *decodeState) array(v reflect.Value) {
newcap = 4
}
newv := reflect.MakeSlice(sv.Type().(*reflect.SliceType), sv.Len(), newcap)
- reflect.ArrayCopy(newv, sv)
+ reflect.Copy(newv, sv)
sv.Set(newv)
}
if i >= av.Len() && sv != nil {
@@ -749,7 +749,7 @@ func (d *decodeState) literalInterface() interface{} {
}
n, err := strconv.Atof64(string(item))
if err != nil {
- d.saveError(&UnmarshalTypeError{"number " + string(item), reflect.Typeof(float64(0))})
+ d.saveError(&UnmarshalTypeError{"number " + string(item), reflect.Typeof(0.0)})
}
return n
}
@@ -831,13 +831,13 @@ func unquote(s []byte) (t string, ok bool) {
if dec := utf16.DecodeRune(rune, rune1); dec != unicode.ReplacementChar {
// A valid pair; consume.
r += 6
- w += utf8.EncodeRune(dec, b[w:])
+ w += utf8.EncodeRune(b[w:], dec)
break
}
// Invalid surrogate; fall back to replacement rune.
rune = unicode.ReplacementChar
}
- w += utf8.EncodeRune(rune, b[w:])
+ w += utf8.EncodeRune(b[w:], rune)
}
// Quote, control characters are invalid.
@@ -854,7 +854,7 @@ func unquote(s []byte) (t string, ok bool) {
default:
rune, size := utf8.DecodeRune(s[r:])
r += size
- w += utf8.EncodeRune(rune, b[w:])
+ w += utf8.EncodeRune(b[w:], rune)
}
}
return string(b[0:w]), true