sort by big.Int

This commit is contained in:
Tuna 2018-11-21 15:20:34 +07:00
parent fcce1d4fc6
commit bf11a67367
2 changed files with 3 additions and 3 deletions

View file

@ -53,7 +53,7 @@ const (
type Masternode struct { type Masternode struct {
Address common.Address Address common.Address
Stake uint64 Stake *big.Int
} }
// Posv proof-of-stake-voting protocol constants. // Posv proof-of-stake-voting protocol constants.

View file

@ -1624,7 +1624,7 @@ func (bc *BlockChain) UpdateM1() error {
} }
//TODO: smart contract shouldn't return "0x0000000000000000000000000000000000000000" //TODO: smart contract shouldn't return "0x0000000000000000000000000000000000000000"
if candidate.String() != "0x0000000000000000000000000000000000000000" { if candidate.String() != "0x0000000000000000000000000000000000000000" {
ms = append(ms, posv.Masternode{Address: candidate, Stake: v.Uint64()}) ms = append(ms, posv.Masternode{Address: candidate, Stake: v})
} }
} }
if len(ms) == 0 { if len(ms) == 0 {
@ -1632,7 +1632,7 @@ func (bc *BlockChain) UpdateM1() error {
os.Exit(1) os.Exit(1)
} else { } else {
sort.Slice(ms, func(i, j int) bool { 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") log.Info("Ordered list of masternode candidates")
for _, m := range ms { for _, m := range ms {