diff options
author | Thomas Huang <tmashuang@users.noreply.github.com> | 2018-11-23 03:06:46 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-23 03:06:46 +0800 |
commit | be3619cd802536894097d81e7f31d38b0c2b3e9f (patch) | |
tree | 2591ff5a9fe64f2dbd9fa089f5c51e8d0141be24 /app/scripts/controllers/transactions/pending-tx-tracker.js | |
parent | 337a4e1b4ea7a560d773bc262b2adffd1617a39b (diff) | |
parent | 804b273cec61246f0d23efd461ccd2cc5c64bf22 (diff) | |
download | tangerine-wallet-browser-be3619cd802536894097d81e7f31d38b0c2b3e9f.tar tangerine-wallet-browser-be3619cd802536894097d81e7f31d38b0c2b3e9f.tar.gz tangerine-wallet-browser-be3619cd802536894097d81e7f31d38b0c2b3e9f.tar.bz2 tangerine-wallet-browser-be3619cd802536894097d81e7f31d38b0c2b3e9f.tar.lz tangerine-wallet-browser-be3619cd802536894097d81e7f31d38b0c2b3e9f.tar.xz tangerine-wallet-browser-be3619cd802536894097d81e7f31d38b0c2b3e9f.tar.zst tangerine-wallet-browser-be3619cd802536894097d81e7f31d38b0c2b3e9f.zip |
Merge pull request #5793 from MetaMask/develop
Bring master up to date with develop
Diffstat (limited to 'app/scripts/controllers/transactions/pending-tx-tracker.js')
-rw-r--r-- | app/scripts/controllers/transactions/pending-tx-tracker.js | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/app/scripts/controllers/transactions/pending-tx-tracker.js b/app/scripts/controllers/transactions/pending-tx-tracker.js index 70cac096b..4bf40b1db 100644 --- a/app/scripts/controllers/transactions/pending-tx-tracker.js +++ b/app/scripts/controllers/transactions/pending-tx-tracker.js @@ -1,4 +1,4 @@ -const EventEmitter = require('events') +const EventEmitter = require('safe-event-emitter') const log = require('loglevel') const EthQuery = require('ethjs-query') @@ -27,6 +27,7 @@ class PendingTransactionTracker extends EventEmitter { this.getPendingTransactions = config.getPendingTransactions this.getCompletedTransactions = config.getCompletedTransactions this.publishTransaction = config.publishTransaction + this.approveTransaction = config.approveTransaction this.confirmTransaction = config.confirmTransaction } @@ -108,7 +109,7 @@ class PendingTransactionTracker extends EventEmitter { if (txBlockDistance <= Math.pow(2, retryCount) - 1) return // Only auto-submit already-signed txs: - if (!('rawTx' in txMeta)) return + if (!('rawTx' in txMeta)) return this.approveTransaction(txMeta.id) const rawTx = txMeta.rawTx const txHash = await this.publishTransaction(rawTx) @@ -129,6 +130,9 @@ class PendingTransactionTracker extends EventEmitter { const txHash = txMeta.hash const txId = txMeta.id + // Only check submitted txs + if (txMeta.status !== 'submitted') return + // extra check in case there was an uncaught error during the // signature and submission process if (!txHash) { |