aboutsummaryrefslogtreecommitdiffstats
path: root/dist/ethereum.js
diff options
context:
space:
mode:
authorMarek Kotewicz <marek.kotewicz@gmail.com>2015-01-09 20:07:34 +0800
committerMarek Kotewicz <marek.kotewicz@gmail.com>2015-01-09 20:07:34 +0800
commitb3eda29f41b8edecf479e1c7e766211d4ce9334f (patch)
tree0af08c3133f7a0c94b8591ffd8aed010fb707f29 /dist/ethereum.js
parentc397e350f4903b13af901762547fcc4d7905d8cd (diff)
parenta5907a8239c2d60ee5491ae2a33b105480798c6a (diff)
downloadgo-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.js22
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 || {};