aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/scripts/metamask-controller.js14
1 files changed, 10 insertions, 4 deletions
diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js
index f114d22f3..fef16c3a9 100644
--- a/app/scripts/metamask-controller.js
+++ b/app/scripts/metamask-controller.js
@@ -389,12 +389,16 @@ module.exports = class MetamaskController extends EventEmitter {
setupProviderConnection (outStream, origin) {
// setup json rpc engine stack
const engine = new RpcEngine()
- engine.push(createOriginMiddleware({ origin }))
- engine.push(createLoggerMiddleware({ origin }))
- engine.push(createFilterMiddleware({
+
+ // create filter polyfill middleware
+ const filterMiddleware = createFilterMiddleware({
provider: this.provider,
blockTracker: this.blockTracker,
- }))
+ })
+
+ engine.push(createOriginMiddleware({ origin }))
+ engine.push(createLoggerMiddleware({ origin }))
+ engine.push(filterMiddleware)
engine.push(createProviderMiddleware({ provider: this.provider }))
// setup connection
@@ -404,6 +408,8 @@ module.exports = class MetamaskController extends EventEmitter {
providerStream,
outStream,
(err) => {
+ // cleanup filter polyfill middleware
+ filterMiddleware.destroy()
if (err) log.error(err)
}
)