diff --git a/src/app/tabs/run-tab.js b/src/app/tabs/run-tab.js index 8038afd1cc..94f6ba4e88 100644 --- a/src/app/tabs/run-tab.js +++ b/src/app/tabs/run-tab.js @@ -281,7 +281,7 @@ function contractDropdown (events, appAPI, appEvents, instanceContainer) { var constructor = txHelper.getConstructorInterface(selectedContract.contract.object.abi) var args = createButtonInput.value - txFormat.buildData(selectedContract.name, selectedContract.contract.object, appAPI.getContracts(), true, constructor, args, appAPI.udapp(), (error, data) => { + txFormat.buildData(selectedContract.name, selectedContract.contract.object, appAPI.getContracts(), true, constructor, args, (error, data) => { if (!error) { appAPI.logMessage(`creation of ${selectedContract.name} pending...`) txExecution.createContract(data, appAPI.udapp(), (error, txResult) => { @@ -306,6 +306,9 @@ function contractDropdown (events, appAPI, appEvents, instanceContainer) { } }, (msg) => { appAPI.logMessage(msg) + }, (data, runTxCallback) => { + // called for libraries deployment + appAPI.udapp().runTx(data, runTxCallback) }) } diff --git a/src/universal-dapp.js b/src/universal-dapp.js index 1189745d97..e3d676e835 100644 --- a/src/universal-dapp.js +++ b/src/universal-dapp.js @@ -162,7 +162,7 @@ UniversalDApp.prototype.call = function (isUserAction, args, value, lookupOnly, logMsg = `call to ${args.contractName}.${(args.funABI.name) ? args.funABI.name : '(fallback)'}` } } - txFormat.buildData(args.contractName, args.contractAbi, self.contracts, false, args.funABI, value, self, (error, data) => { + txFormat.buildData(args.contractName, args.contractAbi, self.contracts, false, args.funABI, value, (error, data) => { if (!error) { if (isUserAction) { if (!args.funABI.constant) { @@ -194,6 +194,12 @@ UniversalDApp.prototype.call = function (isUserAction, args, value, lookupOnly, } }, (msg) => { self._api.logMessage(msg) + }, (data, runTxCallback) => { + // called for libraries deployment + self.runTx(data, runTxCallback) + }) +} + }) }