aboutsummaryrefslogtreecommitdiffstats
path: root/common/big.go
diff options
context:
space:
mode:
authorjohnliu-dexon <42129254+johnliu-dexon@users.noreply.github.com>2019-01-17 16:37:15 +0800
committerWei-Ning Huang <w@dexon.org>2019-03-12 12:19:09 +0800
commit5d8993b8c01668589713e30d4431f404339cacf4 (patch)
tree72049a84051aef4c79293e1f29deb70a0350d0b3 /common/big.go
parent829434eaaaa43973438affbbe3c4cf22d7bfb334 (diff)
downloaddexon-5d8993b8c01668589713e30d4431f404339cacf4.tar
dexon-5d8993b8c01668589713e30d4431f404339cacf4.tar.gz
dexon-5d8993b8c01668589713e30d4431f404339cacf4.tar.bz2
dexon-5d8993b8c01668589713e30d4431f404339cacf4.tar.lz
dexon-5d8993b8c01668589713e30d4431f404339cacf4.tar.xz
dexon-5d8993b8c01668589713e30d4431f404339cacf4.tar.zst
dexon-5d8993b8c01668589713e30d4431f404339cacf4.zip
common: fix big scan from bytes (#157)
We store string of number, not bytes value into database 10 is stored as 0x3130, not 0x0a Use UnmarshalText instead of SetBytes
Diffstat (limited to 'common/big.go')
-rw-r--r--common/big.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/common/big.go b/common/big.go
index ea3d4aba6..96a83661e 100644
--- a/common/big.go
+++ b/common/big.go
@@ -45,7 +45,11 @@ func (b *Big) Scan(src interface{}) error {
case uint64:
*b = Big(*newB.SetUint64(t))
case []byte:
- *b = Big(*newB.SetBytes(t))
+ err := newB.UnmarshalText(t)
+ if err != nil {
+ return err
+ }
+ *b = Big(*newB)
case string:
v, ok := newB.SetString(t, 10)
if !ok {