aboutsummaryrefslogtreecommitdiffstats
path: root/vm/context.go
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2015-01-12 20:49:47 +0800
committerobscuren <geffobscura@gmail.com>2015-01-12 20:49:47 +0800
commit00348756bce00c2d19f16ce8df5eff7a62f5cfc6 (patch)
treef1512c49e5cc23b390d71a4b5e2df4bd5ad7ee05 /vm/context.go
parent35fe4313d57e1df6c3c8af0bc0b530bd7033e21b (diff)
downloaddexon-00348756bce00c2d19f16ce8df5eff7a62f5cfc6.tar.gz
dexon-00348756bce00c2d19f16ce8df5eff7a62f5cfc6.tar.zst
dexon-00348756bce00c2d19f16ce8df5eff7a62f5cfc6.zip
updated tests
Diffstat (limited to 'vm/context.go')
-rw-r--r--vm/context.go7
1 files changed, 7 insertions, 0 deletions
diff --git a/vm/context.go b/vm/context.go
index d14df1aa7..b48f1a657 100644
--- a/vm/context.go
+++ b/vm/context.go
@@ -61,6 +61,13 @@ func (c *Context) GetRangeValue(x, size uint64) []byte {
return ethutil.LeftPadBytes(c.Code[x:y], int(size))
}
+func (c *Context) GetCode(x, size uint64) []byte {
+ x = uint64(math.Min(float64(x), float64(len(c.Code))))
+ y := uint64(math.Min(float64(x+size), float64(len(c.Code))))
+
+ return ethutil.RightPadBytes(c.Code[x:y], int(size))
+}
+
func (c *Context) Return(ret []byte) []byte {
// Return the remaining gas to the caller
c.caller.ReturnGas(c.Gas, c.Price)