diff options
author | obscuren <geffobscura@gmail.com> | 2015-01-06 00:37:30 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2015-01-06 00:39:42 +0800 |
commit | b99b2c446ca3a81a692eb58294d5a4f6a999f00c (patch) | |
tree | 11c6091f79a7a5bccd485bf1d74f7dec7504b6e9 /core/execution.go | |
parent | d001479a47ee27a460a7cc6df136176662fd1799 (diff) | |
download | go-tangerine-b99b2c446ca3a81a692eb58294d5a4f6a999f00c.tar.gz go-tangerine-b99b2c446ca3a81a692eb58294d5a4f6a999f00c.tar.zst go-tangerine-b99b2c446ca3a81a692eb58294d5a4f6a999f00c.zip |
Precompiled contract & Depth change
* Added pre-compiled contract 0x04 (mem cpy)
* Changed depth error to return the gas instead of consuming
Diffstat (limited to 'core/execution.go')
-rw-r--r-- | core/execution.go | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/core/execution.go b/core/execution.go index a7bb59651..43f4b58fb 100644 --- a/core/execution.go +++ b/core/execution.go @@ -36,7 +36,8 @@ func (self *Execution) exec(code, contextAddr []byte, caller vm.ContextRef) (ret evm := vm.New(env, vm.DebugVmTy) if env.Depth() == vm.MaxCallDepth { - // Consume all gas (by not returning it) and return a depth error + caller.ReturnGas(self.Gas, self.price) + return nil, vm.DepthError{} } |