mirror of
https://github.com/status-im/op-geth.git
synced 2025-01-14 08:44:29 +00:00
Merge pull request #1502 from ethereum/canaryFix
Fixed canary to require 2+ nonzero, not sum 2+
This commit is contained in:
commit
f1daed65b1
@ -34,11 +34,18 @@ var (
|
|||||||
// If two or more are set to anything other than a 0 the canary
|
// If two or more are set to anything other than a 0 the canary
|
||||||
// dies a horrible death.
|
// dies a horrible death.
|
||||||
func Canary(statedb *state.StateDB) bool {
|
func Canary(statedb *state.StateDB) bool {
|
||||||
r := new(big.Int)
|
var r int
|
||||||
r.Add(r, statedb.GetState(jeff, common.Hash{}).Big())
|
if (statedb.GetState(jeff, common.Hash{}).Big().Cmp(big.NewInt(0)) > 0) {
|
||||||
r.Add(r, statedb.GetState(vitalik, common.Hash{}).Big())
|
r++
|
||||||
r.Add(r, statedb.GetState(christoph, common.Hash{}).Big())
|
}
|
||||||
r.Add(r, statedb.GetState(gav, common.Hash{}).Big())
|
if (statedb.GetState(gav, common.Hash{}).Big().Cmp(big.NewInt(0)) > 0) {
|
||||||
|
r++
|
||||||
return r.Cmp(big.NewInt(1)) > 0
|
}
|
||||||
|
if (statedb.GetState(christoph, common.Hash{}).Big().Cmp(big.NewInt(0)) > 0) {
|
||||||
|
r++
|
||||||
|
}
|
||||||
|
if (statedb.GetState(vitalik, common.Hash{}).Big().Cmp(big.NewInt(0)) > 0) {
|
||||||
|
r++
|
||||||
|
}
|
||||||
|
return r > 1
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user