diff --git a/core/blockchain.go b/core/blockchain.go index ec077d4add..e31f933a7e 100644 --- a/core/blockchain.go +++ b/core/blockchain.go @@ -1622,7 +1622,7 @@ func (bc *BlockChain) UpdateM1() error { } //TODO: smart contract shouldn't return "0x0000000000000000000000000000000000000000" if candidate.String() != "0x0000000000000000000000000000000000000000" { - ms = append(ms, XDPoS.Masternode{Address: candidate, Stake: v.Uint64()}) + ms = append(ms, XDPoS.Masternode{Address: candidate, Stake: v}) } } if len(ms) == 0 { @@ -1630,7 +1630,7 @@ func (bc *BlockChain) UpdateM1() error { os.Exit(1) } else { sort.Slice(ms, func(i, j int) bool { - return ms[i].Stake >= ms[j].Stake + return ms[i].Stake.Cmp(ms[j].Stake) >= 0 }) log.Info("Ordered list of masternode candidates") for _, m := range ms {