From 65adc693b917cc665945b30f96afed37c1e83965 Mon Sep 17 00:00:00 2001 From: Iuri Matias Date: Wed, 11 Apr 2018 14:17:28 -0400 Subject: [PATCH 1/3] handle error from runTx --- remix-lib/src/execution/txRunner.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/remix-lib/src/execution/txRunner.js b/remix-lib/src/execution/txRunner.js index 867ee4021c..d92148a80f 100644 --- a/remix-lib/src/execution/txRunner.js +++ b/remix-lib/src/execution/txRunner.js @@ -112,6 +112,9 @@ TxRunner.prototype.runInVm = function (from, to, data, value, gasLimit, useCall, } executionContext.vm().runTx({block: block, tx: tx, skipBalance: true, skipNonce: true}, function (err, result) { + if (err) { + return callback(err); + } if (useCall) { executionContext.vm().stateManager.revert(function () {}) } From 53f74aa261829f3c83d6c9129badcfc8cf7493d1 Mon Sep 17 00:00:00 2001 From: Iuri Matias Date: Wed, 11 Apr 2018 14:33:13 -0400 Subject: [PATCH 2/3] comply with linter --- remix-lib/src/execution/txRunner.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/remix-lib/src/execution/txRunner.js b/remix-lib/src/execution/txRunner.js index d92148a80f..81f26116b7 100644 --- a/remix-lib/src/execution/txRunner.js +++ b/remix-lib/src/execution/txRunner.js @@ -113,7 +113,7 @@ TxRunner.prototype.runInVm = function (from, to, data, value, gasLimit, useCall, executionContext.vm().runTx({block: block, tx: tx, skipBalance: true, skipNonce: true}, function (err, result) { if (err) { - return callback(err); + return callback(err) } if (useCall) { executionContext.vm().stateManager.revert(function () {}) From 177713b3de2bde4715671fe7210dae056f3b9f04 Mon Sep 17 00:00:00 2001 From: Iuri Matias Date: Wed, 11 Apr 2018 14:46:24 -0400 Subject: [PATCH 3/3] check result instead of previous early return fix --- remix-lib/src/execution/txRunner.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/remix-lib/src/execution/txRunner.js b/remix-lib/src/execution/txRunner.js index 81f26116b7..30b60fa6fd 100644 --- a/remix-lib/src/execution/txRunner.js +++ b/remix-lib/src/execution/txRunner.js @@ -112,14 +112,13 @@ TxRunner.prototype.runInVm = function (from, to, data, value, gasLimit, useCall, } executionContext.vm().runTx({block: block, tx: tx, skipBalance: true, skipNonce: true}, function (err, result) { - if (err) { - return callback(err) - } if (useCall) { executionContext.vm().stateManager.revert(function () {}) } err = err ? err.message : err - result.status = '0x' + result.vm.exception.toString(16) + if (result) { + result.status = '0x' + result.vm.exception.toString(16) + } callback(err, { result: result, transactionHash: ethJSUtil.bufferToHex(new Buffer(tx.hash()))