diff options
Diffstat (limited to 'lib/contract.js')
-rw-r--r-- | lib/contract.js | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/lib/contract.js b/lib/contract.js index 66cd6753f..498908d37 100644 --- a/lib/contract.js +++ b/lib/contract.js @@ -76,23 +76,25 @@ var contract = function (address, desc) { var options = result._options || {}; options.to = address; options.data = signature + parsed; + + var isTransact = result._isTransact; + + // reset + result._options = {}; + result._isTransact = false; - var output = ""; - if (result._isTransact) { + if (isTransact) { // it's used byt natspec.js // TODO: figure out better way to solve this web3._currentContractAbi = desc; web3._currentContractAddress = address; - output = web3.eth.transact(options); - } else { - output = web3.eth.call(options); + // transactions do not have any output, cause we do not know, when they will be processed + web3.eth.transact(options); + return; } - - // reset - result._options = {}; - result._isTransact = false; - + + var output = web3.eth.call(options); return outputParser[displayName][typeName](output); }; |