From 65722aeeca0fed685a00d660ddd7bb667ac3be9b Mon Sep 17 00:00:00 2001 From: obscuren Date: Wed, 28 May 2014 13:14:56 +0200 Subject: [PATCH] Added StringToBytesFunc --- ethchain/vm.go | 2 +- ethutil/bytes.go | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/ethchain/vm.go b/ethchain/vm.go index 29eb4aaf5..85136e435 100644 --- a/ethchain/vm.go +++ b/ethchain/vm.go @@ -448,7 +448,7 @@ func (vm *Vm) RunClosure(closure *Closure, hook DebugHook) (ret []byte, err erro closure.Price) // Call the closure and set the return value as // main script. - c.Script, _, err = c.Call(vm, nil, hook) + c.Script, gas, err = c.Call(vm, nil, hook) if err != nil { stack.Push(ethutil.BigFalse) diff --git a/ethutil/bytes.go b/ethutil/bytes.go index b298675a2..075e40b4c 100644 --- a/ethutil/bytes.go +++ b/ethutil/bytes.go @@ -88,3 +88,13 @@ func IsHex(str string) bool { l := len(str) return l >= 4 && l%2 == 0 && str[0:2] == "0x" } + +func StringToByteFunc(str string, cb func(str string) []byte) (ret []byte) { + if str[0:2] == "0x" { + ret = FromHex(str[2:]) + } else { + ret = cb(str) + } + + return +}