diff --git a/remix-lib/src/execution/execution-context.js b/remix-lib/src/execution/execution-context.js index ce3d23b504..0e1b2dc313 100644 --- a/remix-lib/src/execution/execution-context.js +++ b/remix-lib/src/execution/execution-context.js @@ -1,28 +1,25 @@ /* global ethereum */ 'use strict' -var Web3 = require('web3') -var EventManager = require('../eventManager') -var EthJSVM = require('ethereumjs-vm').default -var ethUtil = require('ethereumjs-util') -var StateManager = require('ethereumjs-vm/dist/state/stateManager').default -var Web3VMProvider = require('../web3Provider/web3VmProvider') +const Web3 = require('web3') +const EventManager = require('../eventManager') +const EthJSVM = require('ethereumjs-vm').default +const ethUtil = require('ethereumjs-util') +const StateManager = require('ethereumjs-vm/dist/state/stateManager').default +const Web3VMProvider = require('../web3Provider/web3VmProvider') -var LogsManager = require('./logsManager.js') +const LogsManager = require('./logsManager.js') -var rlp = ethUtil.rlp +const rlp = ethUtil.rlp -var injectedProvider - -var web3 if (typeof window !== 'undefined' && typeof window.web3 !== 'undefined') { - injectedProvider = window.web3.currentProvider - web3 = new Web3(injectedProvider) + var injectedProvider = window.web3.currentProvider + var web3 = new Web3(injectedProvider) } else { web3 = new Web3(new Web3.providers.HttpProvider('http://localhost:8545')) } -var blankWeb3 = new Web3() - +const blankWeb3 = new Web3() +const currentFork = 'istanbul' /* extend vm state manager and instanciate VM */ @@ -143,7 +140,7 @@ function ExecutionContext () { } this.web3 = function () { - return this.isVM() ? vms.istanbul.web3vm : web3 + return this.isVM() ? vms[currentFork].web3vm : web3 } this.detectNetwork = function (callback) { @@ -198,7 +195,7 @@ function ExecutionContext () { } this.vm = function () { - return vms.istanbul.vm + return vms[currentFork].vm } this.setContext = function (context, endPointUrl, confirmCb, infoCb) { @@ -211,8 +208,8 @@ function ExecutionContext () { if (context === 'vm') { executionContext = context - vms.istanbul.stateManager.revert(() => { - vms.istanbul.stateManager.checkpoint(() => {}) + vms[currentFork].stateManager.revert(() => { + vms[currentFork].stateManager.checkpoint(() => {}) }) self.event.trigger('contextChanged', ['vm']) return cb() diff --git a/remix-lib/src/execution/txRunner.js b/remix-lib/src/execution/txRunner.js index 60580e3378..dece547e90 100644 --- a/remix-lib/src/execution/txRunner.js +++ b/remix-lib/src/execution/txRunner.js @@ -148,7 +148,8 @@ class TxRunner { executionContext.vm().runBlock({ block: block, generate: true, skipBlockValidation: true, skipBalance: false }).then(function (results) { let result = results.results[0] if (result) { - result.status = '0x' + (result.execResult.exceptionError ? 0 : 1) + const status = result.execResult.exceptionError ? 0 : 1 + result.status = `0x${status}` } executionContext.addBlock(block) executionContext.trackTx('0x' + tx.hash().toString('hex'), block) @@ -157,7 +158,6 @@ class TxRunner { transactionHash: ethJSUtil.bufferToHex(Buffer.from(tx.hash())) }) }).catch(function (err) { - err = err ? err.message : err callback(err) }) } diff --git a/remix-lib/src/web3Provider/web3VmProvider.js b/remix-lib/src/web3Provider/web3VmProvider.js index 1e0211d10e..716d71a38a 100644 --- a/remix-lib/src/web3Provider/web3VmProvider.js +++ b/remix-lib/src/web3Provider/web3VmProvider.js @@ -126,7 +126,8 @@ web3VmProvider.prototype.txProcessed = function (self, data) { } self.txsReceipt[self.processingHash].logs = logs self.txsReceipt[self.processingHash].transactionHash = self.processingHash - self.txsReceipt[self.processingHash].status = '0x' + (data.execResult.exceptionError ? 0 : 1) + const status = data.execResult.exceptionError ? 0 : 1 + self.txsReceipt[self.processingHash].status = `0x${status}` if (data.createdAddress) { var address = util.hexConvert(data.createdAddress)