diff options
author | Jimmy Hu <jimmy.hu@dexon.org> | 2019-02-19 14:33:22 +0800 |
---|---|---|
committer | Wei-Ning Huang <w@dexon.org> | 2019-03-12 12:19:09 +0800 |
commit | d59069b988844fce1b99d440914b1ef2b6d39e07 (patch) | |
tree | a4054ece8c2a39bbf4976a1278e9b18c37aa5ddb | |
parent | adf3afcd90b639efe1c6e237a3fdc2e4411e7292 (diff) | |
download | dexon-d59069b988844fce1b99d440914b1ef2b6d39e07.tar.gz dexon-d59069b988844fce1b99d440914b1ef2b6d39e07.tar.zst dexon-d59069b988844fce1b99d440914b1ef2b6d39e07.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 |