common/hexutil: fix EncodeBig, Big.MarshalJSON

The code was too clever and failed to include zeros on a big.Word
boundary.
This commit is contained in:
Felix Lange
2017-01-16 10:20:20 +01:00
parent 01f6f2d741
commit 51f6b6d33f
3 changed files with 4 additions and 13 deletions

View File

@ -169,12 +169,7 @@ func EncodeBig(bigint *big.Int) string {
if nbits == 0 {
return "0x0"
}
enc := make([]byte, 2, (nbits/8)*2+2)
copy(enc, "0x")
for i := len(bigint.Bits()) - 1; i >= 0; i-- {
enc = strconv.AppendUint(enc, uint64(bigint.Bits()[i]), 16)
}
return string(enc)
return fmt.Sprintf("0x%x", bigint)
}
func has0xPrefix(input string) bool {