diff options
author | Luke Shumaker <lukeshu@lukeshu.com> | 2023-02-14 14:27:18 -0700 |
---|---|---|
committer | Luke Shumaker <lukeshu@lukeshu.com> | 2023-02-18 22:45:54 -0700 |
commit | 218edcc3878394a6942d4f72e3be99137c22825a (patch) | |
tree | bdff24c7d278da78fc65026e27586e162892aa54 /reencode_compactnum.go | |
parent | d240d0b06c7b5711f583d961eddfc37d07d4546e (diff) |
reencode: Fix trimming trailing zeros
Diffstat (limited to 'reencode_compactnum.go')
-rw-r--r-- | reencode_compactnum.go | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/reencode_compactnum.go b/reencode_compactnum.go index 5da2c54..bdf1f4e 100644 --- a/reencode_compactnum.go +++ b/reencode_compactnum.go @@ -33,14 +33,12 @@ func (enc *reEncodeCompactNum) HandleRune(c rune, t jsonparse.RuneType, escape B if c == '0' && !enc.fracFirst { enc.fracZeros++ return nil - } - fallthrough - default: - for enc.fracZeros > 0 { - if err := enc.out.HandleRune('0', jsonparse.RuneTypeNumberFracDig, escape, stackSize); err != nil { - return err + } else { + for ; enc.fracZeros > 0; enc.fracZeros-- { + if err := enc.out.HandleRune('0', jsonparse.RuneTypeNumberFracDig, escape, stackSize); err != nil { + return err + } } - enc.fracZeros-- } enc.fracFirst = false } |