aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'app/scripts')
-rw-r--r--app/scripts/controllers/transactions.js6
-rw-r--r--app/scripts/metamask-controller.js11
2 files changed, 13 insertions, 4 deletions
diff --git a/app/scripts/controllers/transactions.js b/app/scripts/controllers/transactions.js
index 469deb670..ded9739a8 100644
--- a/app/scripts/controllers/transactions.js
+++ b/app/scripts/controllers/transactions.js
@@ -180,8 +180,10 @@ module.exports = class TransactionController extends EventEmitter {
// ensure value
txMeta.gasPriceSpecified = Boolean(txParams.gasPrice)
txMeta.nonceSpecified = Boolean(txParams.nonce)
- const gasPrice = txParams.gasPrice || this.getGasPrice ? this.getGasPrice()
- : await this.query.gasPrice()
+ let gasPrice = txParams.gasPrice
+ if (!gasPrice) {
+ gasPrice = this.getGasPrice ? this.getGasPrice() : await this.query.gasPrice()
+ }
txParams.gasPrice = ethUtil.addHexPrefix(gasPrice.toString(16))
txParams.value = txParams.value || '0x0'
// set gasLimit
diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js
index 66738db51..f62b5e5cd 100644
--- a/app/scripts/metamask-controller.js
+++ b/app/scripts/metamask-controller.js
@@ -490,9 +490,15 @@ module.exports = class MetamaskController extends EventEmitter {
getGasPrice () {
const { recentBlocksController } = this
const { recentBlocks } = recentBlocksController.store.getState()
+
+ // Return 1 gwei if no blocks have been observed:
+ if (recentBlocks.length === 0) {
+ return '0x' + GWEI_BN.toString(16)
+ }
+
const lowestPrices = recentBlocks.map((block) => {
- if (!block.gasPrices) {
- return new BN(0)
+ if (!block.gasPrices || block.gasPrices.length < 1) {
+ return GWEI_BN
}
return block.gasPrices
.map(hexPrefix => hexPrefix.substr(2))
@@ -502,6 +508,7 @@ module.exports = class MetamaskController extends EventEmitter {
})[0]
})
.map(number => number.div(GWEI_BN).toNumber())
+
const percentileNum = percentile(50, lowestPrices)
const percentileNumBn = new BN(percentileNum)
return '0x' + percentileNumBn.mul(GWEI_BN).toString(16)