aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts
diff options
context:
space:
mode:
authorKevin Serrano <kevgagser@gmail.com>2016-11-11 12:36:50 +0800
committerGitHub <noreply@github.com>2016-11-11 12:36:50 +0800
commitad290d3edca99daa22d595a26e63ac6dff480d9d (patch)
tree8948496230e160c389ad57ab8ed26b9d8e3557a3 /app/scripts
parent161ff62fdcf6f76f7243a1e865dd0cccbc89121f (diff)
parent17aac2dbc54b733aeed5f16ef2e7bd8378060ca9 (diff)
downloadtangerine-wallet-browser-ad290d3edca99daa22d595a26e63ac6dff480d9d.tar.gz
tangerine-wallet-browser-ad290d3edca99daa22d595a26e63ac6dff480d9d.tar.zst
tangerine-wallet-browser-ad290d3edca99daa22d595a26e63ac6dff480d9d.zip
Merge pull request #802 from MetaMask/confTxFix
Conf tx fix
Diffstat (limited to 'app/scripts')
-rw-r--r--app/scripts/keyring-controller.js5
-rw-r--r--app/scripts/lib/idStore.js4
-rw-r--r--app/scripts/metamask-controller.js7
3 files changed, 12 insertions, 4 deletions
diff --git a/app/scripts/keyring-controller.js b/app/scripts/keyring-controller.js
index 3ebf02c44..5d9dd51a4 100644
--- a/app/scripts/keyring-controller.js
+++ b/app/scripts/keyring-controller.js
@@ -38,7 +38,7 @@ module.exports = class KeyringController extends EventEmitter {
this._unconfTxCbs = {}
this._unconfMsgCbs = {}
- this.network = opts.network
+ this.getNetwork = opts.getNetwork
// TEMPORARY UNTIL FULL DEPRECATION:
this.idStoreMigrator = new IdStoreMigrator({
@@ -344,13 +344,14 @@ module.exports = class KeyringController extends EventEmitter {
var time = (new Date()).getTime()
var txId = createId()
txParams.metamaskId = txId
- txParams.metamaskNetworkId = this.network
+ txParams.metamaskNetworkId = this.getNetwork()
var txData = {
id: txId,
txParams: txParams,
time: time,
status: 'unconfirmed',
gasMultiplier: configManager.getGasMultiplier() || 1,
+ metamaskNetworkId: this.getNetwork(),
}
diff --git a/app/scripts/lib/idStore.js b/app/scripts/lib/idStore.js
index ef2416cdf..23b14524e 100644
--- a/app/scripts/lib/idStore.js
+++ b/app/scripts/lib/idStore.js
@@ -260,6 +260,7 @@ IdentityStore.prototype.addUnconfirmedTransaction = function (txParams, onTxDone
query.estimateGas(txParams, function(err, result){
if (err) return cb(err)
txData.estimatedGas = self.addGasBuffer(result)
+ txData.txParams.gasLimit = txData.estimatedGas
cb()
})
}
@@ -285,9 +286,10 @@ IdentityStore.prototype.checkForDelegateCall = function (codeHex) {
}
}
-const gasBuffer = new BN('100000', 10)
IdentityStore.prototype.addGasBuffer = function (gas) {
const bnGas = new BN(ethUtil.stripHexPrefix(gas), 16)
+ const five = new BN('5', 10)
+ const gasBuffer = bnGas.div(five)
const correct = bnGas.add(gasBuffer)
return ethUtil.addHexPrefix(correct.toString(16))
}
diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js
index a165a2e2a..07d365283 100644
--- a/app/scripts/metamask-controller.js
+++ b/app/scripts/metamask-controller.js
@@ -17,6 +17,7 @@ module.exports = class MetamaskController {
this.configManager = new ConfigManager(opts)
this.keyringController = new KeyringController({
configManager: this.configManager,
+ getNetwork: this.getStateNetwork.bind(this),
})
this.provider = this.initializeProvider(opts)
this.ethStore = new EthStore(this.provider)
@@ -218,7 +219,6 @@ module.exports = class MetamaskController {
let err = this.enforceTxValidations(txParams)
if (err) return onTxDoneCb(err)
-
keyringController.addUnconfirmedTransaction(txParams, onTxDoneCb, (err, txData) => {
if (err) return onTxDoneCb(err)
this.sendUpdate()
@@ -400,4 +400,9 @@ module.exports = class MetamaskController {
cb(e)
}
}
+
+ getStateNetwork () {
+ return this.state.network
+ }
}
+