@ -297,19 +297,17 @@ func (t *StateTest) RunNoVerify(subtest StateSubtest, vmconfig vm.Config, snapsh
if tracer := vmconfig . Tracer ; tracer != nil && tracer . OnTxStart != nil {
if tracer := vmconfig . Tracer ; tracer != nil && tracer . OnTxStart != nil {
tracer . OnTxStart ( evm . GetVMContext ( ) , nil , msg . From )
tracer . OnTxStart ( evm . GetVMContext ( ) , nil , msg . From )
if evm . Config . Tracer . OnTxEnd != nil {
defer func ( ) {
evm . Config . Tracer . OnTxEnd ( nil , err )
} ( )
}
}
}
// Execute the message.
// Execute the message.
snapshot := st . StateDB . Snapshot ( )
snapshot := st . StateDB . Snapshot ( )
gaspool := new ( core . GasPool )
gaspool := new ( core . GasPool )
gaspool . AddGas ( block . GasLimit ( ) )
gaspool . AddGas ( block . GasLimit ( ) )
_ , err = core . ApplyMessage ( evm , msg , gaspool )
vmRet , err : = core . ApplyMessage ( evm , msg , gaspool )
if err != nil {
if err != nil {
st . StateDB . RevertToSnapshot ( snapshot )
st . StateDB . RevertToSnapshot ( snapshot )
if tracer := evm . Config . Tracer ; tracer != nil && tracer . OnTxEnd != nil {
evm . Config . Tracer . OnTxEnd ( nil , err )
}
}
}
// Add 0-value mining reward. This only makes a difference in the cases
// Add 0-value mining reward. This only makes a difference in the cases
// where
// where
@ -320,6 +318,10 @@ func (t *StateTest) RunNoVerify(subtest StateSubtest, vmconfig vm.Config, snapsh
// Commit state mutations into database.
// Commit state mutations into database.
root , _ = st . StateDB . Commit ( block . NumberU64 ( ) , config . IsEIP158 ( block . Number ( ) ) )
root , _ = st . StateDB . Commit ( block . NumberU64 ( ) , config . IsEIP158 ( block . Number ( ) ) )
if tracer := evm . Config . Tracer ; tracer != nil && tracer . OnTxEnd != nil {
receipt := & types . Receipt { GasUsed : vmRet . UsedGas }
tracer . OnTxEnd ( receipt , nil )
}
return st , root , err
return st , root , err
}
}