separate call from tx

pull/7/head
Iuri Matias 7 years ago
parent 446608aa12
commit 13b417020e
  1. 29
      remix-simulator/src/txProcess.js

@ -3,24 +3,31 @@ var TxExecution = RemixLib.execution.txExecution
var TxRunner = RemixLib.execution.txRunner var TxRunner = RemixLib.execution.txRunner
var executionContext = RemixLib.execution.executionContext var executionContext = RemixLib.execution.executionContext
function runTx (payload, from, to, data, value, gasLimit, txRunner, callbacks, isCall, callback) { function runCall (payload, from, to, data, value, gasLimit, txRunner, callbacks, callback) {
let finalCallback = function (err, result) { let finalCallback = function (err, result) {
if (err) { if (err) {
return callback(err) return callback(err)
} }
if (isCall) { let toReturn = '0x' + result.result.vm.return.toString('hex')
let toReturn = '0x' + result.result.vm.return.toString('hex') if (toReturn === '0x') {
if (toReturn === '0x') { toReturn = '0x0'
toReturn = '0x0'
}
return callback(null, toReturn)
} }
return callback(null, toReturn)
}
TxExecution.callFunction(from, to, data, value, gasLimit, null, txRunner, callbacks, finalCallback, true)
}
function runTx (payload, from, to, data, value, gasLimit, txRunner, callbacks, callback) {
let finalCallback = function (err, result) {
if (err) {
return callback(err)
}
callback(null, result.transactionHash) callback(null, result.transactionHash)
} }
TxExecution.callFunction(from, to, data, value, gasLimit, null, txRunner, callbacks, finalCallback, isCall) TxExecution.callFunction(from, to, data, value, gasLimit, null, txRunner, callbacks, finalCallback, false)
} }
function createContract (payload, from, data, value, gasLimit, txRunner, callbacks, callback) { function createContract (payload, from, data, value, gasLimit, txRunner, callbacks, callback) {
@ -77,8 +84,10 @@ function processTx (accounts, payload, isCall, callback) {
} }
} }
if (to) { if (isCall) {
runTx(payload, from, to, data, value, gas, txRunner, callbacks, isCall, callback) runCall(payload, from, to, data, value, gas, txRunner, callbacks, callback)
} else if (to) {
runTx(payload, from, to, data, value, gas, txRunner, callbacks, callback)
} else { } else {
createContract(payload, from, data, value, gas, txRunner, callbacks, callback) createContract(payload, from, data, value, gas, txRunner, callbacks, callback)
} }

Loading…
Cancel
Save