forked from cerc-io/plugeth
This commit is contained in:
parent
cdadf57bf9
commit
f578d41ee6
@ -169,6 +169,11 @@ func (evm *EVM) Cancel() {
|
|||||||
atomic.StoreInt32(&evm.abort, 1)
|
atomic.StoreInt32(&evm.abort, 1)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Cancelled returns true if Cancel has been called
|
||||||
|
func (evm *EVM) Cancelled() bool {
|
||||||
|
return atomic.LoadInt32(&evm.abort) == 1
|
||||||
|
}
|
||||||
|
|
||||||
// Interpreter returns the current interpreter
|
// Interpreter returns the current interpreter
|
||||||
func (evm *EVM) Interpreter() Interpreter {
|
func (evm *EVM) Interpreter() Interpreter {
|
||||||
return evm.interpreter
|
return evm.interpreter
|
||||||
|
@ -802,6 +802,10 @@ func DoCall(ctx context.Context, b Backend, args CallArgs, blockNr rpc.BlockNumb
|
|||||||
if err := vmError(); err != nil {
|
if err := vmError(); err != nil {
|
||||||
return nil, 0, false, err
|
return nil, 0, false, err
|
||||||
}
|
}
|
||||||
|
// If the timer caused an abort, return an appropriate error message
|
||||||
|
if evm.Cancelled() {
|
||||||
|
return nil, 0, false, fmt.Errorf("execution aborted (timeout = %v)", timeout)
|
||||||
|
}
|
||||||
return res, gas, failed, err
|
return res, gas, failed, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user