commit 60a92399010ac907d61a45ddc3ae561e3ab08778
parent 3ebfcfb6372e874ff4cd2d6b905793acbdfd02cd
Author: Aleksey Bondarenko <bitbucketorg.f5bt@emailserviceforpro.com>
Date: Thu, 15 Nov 2018 06:15:58 +0000
Fixed incorrect unmarshalling of numbers in scientific format
Diffstat:
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/decode_number.go b/decode_number.go
@@ -61,7 +61,7 @@ func init() {
for i := 0; i < 256; i++ {
switch i {
- case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.':
+ case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.', 'e', 'E', '+', '-':
skipNumberEndCursorIncrement[i] = 1
}
}
@@ -74,7 +74,7 @@ func (dec *Decoder) skipNumber() (int, error) {
end += skipNumberEndCursorIncrement[dec.data[j]]
switch dec.data[j] {
- case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.', ' ', '\n', '\t', '\r':
+ case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.', 'e', 'E', '+', '-', ' ', '\n', '\t', '\r':
continue
case ',', '}', ']':
return end, nil