Merge branch 'master' into i328-MultiVault

This commit is contained in:
kumavis 2016-11-11 01:01:06 -05:00 committed by GitHub
commit e123e3095b
3 changed files with 26 additions and 2 deletions

View File

@ -1,6 +1,7 @@
# Changelog
## Current Master
- Show a warning when a transaction fails during simulation.
- Fix bug where 20% of gas estimate was not being added properly.
## 2.13.7 2016-11-8

View File

@ -257,10 +257,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()
})
}

View File

@ -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: {