diff options
author | Marek Kotewicz <marek.kotewicz@gmail.com> | 2015-01-09 20:07:34 +0800 |
---|---|---|
committer | Marek Kotewicz <marek.kotewicz@gmail.com> | 2015-01-09 20:07:34 +0800 |
commit | b3eda29f41b8edecf479e1c7e766211d4ce9334f (patch) | |
tree | 0af08c3133f7a0c94b8591ffd8aed010fb707f29 /dist/ethereum.js | |
parent | c397e350f4903b13af901762547fcc4d7905d8cd (diff) | |
parent | a5907a8239c2d60ee5491ae2a33b105480798c6a (diff) | |
download | go-tangerine-b3eda29f41b8edecf479e1c7e766211d4ce9334f.tar go-tangerine-b3eda29f41b8edecf479e1c7e766211d4ce9334f.tar.gz go-tangerine-b3eda29f41b8edecf479e1c7e766211d4ce9334f.tar.bz2 go-tangerine-b3eda29f41b8edecf479e1c7e766211d4ce9334f.tar.lz go-tangerine-b3eda29f41b8edecf479e1c7e766211d4ce9334f.tar.xz go-tangerine-b3eda29f41b8edecf479e1c7e766211d4ce9334f.tar.zst go-tangerine-b3eda29f41b8edecf479e1c7e766211d4ce9334f.zip |
Merge branch 'master' into tests
Diffstat (limited to 'dist/ethereum.js')
-rw-r--r-- | dist/ethereum.js | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/dist/ethereum.js b/dist/ethereum.js index 4f4b5d326..c87ebf204 100644 --- a/dist/ethereum.js +++ b/dist/ethereum.js @@ -141,7 +141,6 @@ var toAbiInput = function (json, methodName, params) { return; } - bytes = "0x" + padLeft(index.toString(16), 2); var method = json[index]; for (var i = 0; i < method.inputs.length; i++) { @@ -260,9 +259,22 @@ var outputParser = function (json) { return parser; }; +var methodSignature = function (json, name) { + var method = json[findMethodIndex(json, name)]; + var result = name + '('; + var inputTypes = method.inputs.map(function (inp) { + return inp.type; + }); + result += inputTypes.join(','); + result += ')'; + + return web3.sha3(result); +}; + module.exports = { inputParser: inputParser, - outputParser: outputParser + outputParser: outputParser, + methodSignature: methodSignature }; },{}],2:[function(require,module,exports){ @@ -418,8 +430,10 @@ var contract = function (address, desc) { call: function (extra) { extra = extra || {}; extra.to = address; - extra.data = parsed; - return web3.eth.call(extra).then(onSuccess); + return abi.methodSignature(desc, method.name).then(function (signature) { + extra.data = signature.slice(0, 10) + parsed; + return web3.eth.call(extra).then(onSuccess); + }); }, transact: function (extra) { extra = extra || {}; |