diff --git a/src/multiParamManager.js b/src/multiParamManager.js index 6600b78381..6278a54ae1 100644 --- a/src/multiParamManager.js +++ b/src/multiParamManager.js @@ -183,6 +183,9 @@ class MultiParamManager { if (this.funABI.inputs && this.funABI.inputs.length > 0) { contractProperty.classList.add(css.hasArgs) + } else if (this.funABI.type === 'fallback') { + contractProperty.classList.add(css.hasArgs) + this.contractActionsContainerSingle.querySelector('i').style.visibility = 'hidden' } else { this.contractActionsContainerSingle.querySelector('i').style.visibility = 'hidden' this.basicInputField.style.display = 'none' diff --git a/src/universal-dapp.js b/src/universal-dapp.js index 2982ede212..2bac935b35 100644 --- a/src/universal-dapp.js +++ b/src/universal-dapp.js @@ -205,7 +205,7 @@ UniversalDApp.prototype.call = function (isUserAction, args, value, lookupOnly, } } // contractsDetails is used to resolve libraries - txFormat.buildData(args.contractName, args.contractAbi, self.data.contractsDetails, false, args.funABI, value, (error, data) => { + txFormat.buildData(args.contractName, args.contractAbi, self.data.contractsDetails, false, args.funABI, args.funABI.type !== 'fallback' ? value : '', (error, data) => { if (!error) { if (isUserAction) { if (!args.funABI.constant) { @@ -214,6 +214,7 @@ UniversalDApp.prototype.call = function (isUserAction, args, value, lookupOnly, self._deps.logCallback(`${logMsg}`) } } + if (args.funABI.type === 'fallback') data.dataHex = value self.callFunction(args.address, data, args.funABI, (error, txResult) => { if (!error) { var isVM = executionContext.isVM()