Fix inpage.js event handler memory leak (#6177)

Fixes #6176
feature/default_network_editable
Graham Kaemmer 6 years ago committed by Paul Bouchon
parent b58a9bd202
commit 89c4353408
  1. 9
      app/scripts/inpage.js

@ -29,12 +29,13 @@ console.warn('ATTENTION: In an effort to improve user privacy, MetaMask ' +
* @param {Function} handler - event handler
* @param {boolean} remove - removes this handler after being triggered
*/
function onMessage (messageType, handler, remove) {
window.addEventListener('message', function ({ data }) {
function onMessage (messageType, callback, remove) {
const handler = function ({ data }) {
if (!data || data.type !== messageType) { return }
remove && window.removeEventListener('message', handler)
handler.apply(window, arguments)
})
callback.apply(window, arguments)
}
window.addEventListener('message', handler)
}
//

Loading…
Cancel
Save