diff options
author | Jimmy Hu <jimmy.hu@dexon.org> | 2019-02-19 14:33:22 +0800 |
---|---|---|
committer | Wei-Ning Huang <w@dexon.org> | 2019-04-09 13:50:02 +0800 |
commit | da9d45c9c4ae49389a504d1c9445cdd0028c5543 (patch) | |
tree | 2b83455889914592ecfde457ab21c49b5bd2ddfe | |
parent | 990282162e1d29c5dbf761500e8c67f8f45dbfeb (diff) | |
download | dexon-da9d45c9c4ae49389a504d1c9445cdd0028c5543.tar.gz dexon-da9d45c9c4ae49389a504d1c9445cdd0028c5543.tar.zst dexon-da9d45c9c4ae49389a504d1c9445cdd0028c5543.zip |
core/vm: fix getConfigState (#203)
-rw-r--r-- | core/vm/oracle_contracts.go | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/core/vm/oracle_contracts.go b/core/vm/oracle_contracts.go index b1a56606b..e060312e5 100644 --- a/core/vm/oracle_contracts.go +++ b/core/vm/oracle_contracts.go @@ -1158,17 +1158,16 @@ func (s *GovernanceStateHelper) emitDKGReset(round *big.Int, blockHeight *big.In func getConfigState(evm *EVM, round *big.Int) (*GovernanceStateHelper, error) { configRound := big.NewInt(0) - if round.Uint64() >= core.ConfigRoundShift { - configRound = new(big.Int).Sub(round, big.NewInt(int64(core.ConfigRoundShift-1))) + if round.Uint64() > core.ConfigRoundShift { + configRound = new(big.Int).Sub(round, big.NewInt(int64(core.ConfigRoundShift))) } gs := &GovernanceStateHelper{evm.StateDB} height := gs.RoundHeight(configRound).Uint64() - if round.Uint64() >= core.ConfigRoundShift { + if round.Uint64() > core.ConfigRoundShift { if height == 0 { return nil, errExecutionReverted } - height-- } statedb, err := evm.StateAtNumber(height) return &GovernanceStateHelper{statedb}, err |