mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-22 09:23:21 +01:00
detect tx error - show warning and fix gasLimit
This commit is contained in:
parent
3775a4bf79
commit
536cab0687
@ -259,10 +259,24 @@ IdentityStore.prototype.addUnconfirmedTransaction = function (txParams, onTxDone
|
||||
}
|
||||
|
||||
function estimateGas(cb){
|
||||
query.estimateGas(txParams, function(err, result){
|
||||
var estimationParams = extend(txParams)
|
||||
// 1 billion gas for estimation
|
||||
var gasLimit = '0x3b9aca00'
|
||||
estimationParams.gas = gasLimit
|
||||
query.estimateGas(estimationParams, function(err, result){
|
||||
if (err) return cb(err)
|
||||
if (result === estimationParams.gas) {
|
||||
txData.simulationFails = true
|
||||
query.getBlockByNumber('latest', true, function(err, block){
|
||||
if (err) return cb(err)
|
||||
txData.estimatedGas = block.gasLimit
|
||||
txData.txParams.gas = block.gasLimit
|
||||
cb()
|
||||
})
|
||||
return
|
||||
}
|
||||
txData.estimatedGas = self.addGasBuffer(result)
|
||||
txData.txParams.gasLimit = txData.estimatedGas
|
||||
txData.txParams.gas = txData.estimatedGas
|
||||
cb()
|
||||
})
|
||||
}
|
||||
|
@ -30,6 +30,15 @@ PendingTx.prototype.render = function () {
|
||||
}
|
||||
`),
|
||||
|
||||
txData.simulationFails ?
|
||||
h('span.error', {
|
||||
style: {
|
||||
marginLeft: 50,
|
||||
fontSize: '0.9em',
|
||||
},
|
||||
}, 'Transaction Error. Exception thrown in contract code.')
|
||||
: null,
|
||||
|
||||
state.insufficientBalance ?
|
||||
h('span.error', {
|
||||
style: {
|
||||
|
Loading…
Reference in New Issue
Block a user