Handle call depth exception for CREATE

This commit is contained in:
Gustav Simonsson 2015-05-18 16:23:20 +02:00
parent 36419defd1
commit 1d51cada3c

View File

@ -38,6 +38,12 @@ func (self *Execution) Create(caller vm.ContextRef) (ret []byte, err error, acco
code := self.input code := self.input
self.input = nil self.input = nil
ret, err = self.exec(nil, code, caller) ret, err = self.exec(nil, code, caller)
// Here we get an error if we run into maximum stack depth,
// See: https://github.com/ethereum/yellowpaper/pull/131
// and YP definitions for CREATE instruction
if err != nil {
return nil, err, nil
}
account = self.env.State().GetStateObject(*self.address) account = self.env.State().GetStateObject(*self.address)
return return
} }