diff --git a/decimal_conv.go b/decimal_conv.go index 7acb8fe..401b229 100644 --- a/decimal_conv.go +++ b/decimal_conv.go @@ -27,7 +27,7 @@ func (z *Decimal) SetString(s string) (*Decimal, bool) { func (z *Decimal) scan(r io.ByteScanner, base int) (f *Decimal, b int, err error) { prec := z.prec if prec == 0 { - prec = _DW + prec = DefaultDecimalPrec } // A reasonable value in case of an error. @@ -87,7 +87,7 @@ func (z *Decimal) scan(r io.ByteScanner, base int) (f *Decimal, b int, err error d := int64(fcount) switch b { case 10: - exp10 = d + exp10 += d case 2: exp2 += d case 8: diff --git a/decimal_test.go b/decimal_test.go index e112b7d..26ef8d8 100644 --- a/decimal_test.go +++ b/decimal_test.go @@ -18,15 +18,15 @@ var intData = []struct { pr uint e int32 }{ - {"00000000000000000001232", 10, 0, dec{1232000000000000000}, 19, 4}, + {"00000000000000000001232", 10, 0, dec{1232000000000000000}, DefaultDecimalPrec, 4}, {"1234567890123456789_0123456789012345678_9012345678901234567_8901234567890123456_78901234567890", 0, 90, dec{7890123456789000000, 8901234567890123456, 9012345678901234567, 123456789012345678, 1234567890123456789}, 90, 90}, - {"1235", 0, 0, dec{1235000000000000000}, _DW, 4}, + {"1235", 0, 0, dec{1235000000000000000}, DefaultDecimalPrec, 4}, {"1235", 0, 3, dec{1240000000000000000}, 3, 4}, {"1245", 0, 3, dec{1240000000000000000}, 3, 4}, {"12451", 0, 3, dec{1250000000000000000}, 3, 5}, - {"0", 0, 0, nil, _DW, 0}, + {"0", 0, 0, nil, DefaultDecimalPrec, 0}, } func TestDecimal_dnorm(t *testing.T) {