Index: lib/requestBlocker.js
===================================================================
--- a/lib/requestBlocker.js
+++ b/lib/requestBlocker.js
@@ -86,25 +86,24 @@
     devtools.logRequest(
       page, url, type, docDomain,
       thirdParty, sitekey,
       specificOnly, filter
     );
   }
 }
 
-ext.webRequest.onBeforeRequest.addListener((url, type, page, frame) =>
+function shouldAllowRequest(url, type, page, frame)
 {
   let docDomain = null;
   let sitekey = null;
   let specificOnly = false;
   let thirdParty = false;
   let urlString = stringifyURL(url);
 
-
   if (frame && page)
   {
     if (checkWhitelisted(page, frame))
       return true;
 
     docDomain = extractHostFromFrame(frame);
     sitekey = getKey(page, frame);
     thirdParty = isThirdParty(url, docDomain);
@@ -120,17 +119,19 @@
   );
 
   setTimeout(onBeforeRequestAsync, 0, page, urlString,
                                       mappedType, docDomain,
                                       thirdParty, sitekey,
                                       specificOnly, filter);
 
   return !(filter instanceof BlockingFilter);
-});
+}
+
+ext.webRequest.onBeforeRequest.addListener(shouldAllowRequest);
 
 port.on("filters.collapse", (message, sender) =>
 {
   if (checkWhitelisted(sender.page, sender.frame))
     return false;
 
   let typeMask = RegExpFilter.typeMap[message.mediatype];
   let documentHost = extractHostFromFrame(sender.frame);
@@ -213,15 +214,11 @@
   // Edge supports neither webRequest.ResourceType nor WebSocket blocking yet:
   // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/10297376/
   if (browser.webRequest.ResourceType &&
       (msg.requestType.toUpperCase() in browser.webRequest.ResourceType))
   {
     return false;
   }
 
-  return ext.webRequest.onBeforeRequest._dispatch(
-     new URL(msg.url),
-     msg.requestType,
-     sender.page,
-     sender.frame
-  ).includes(false);
+  return !shouldAllowRequest(new URL(msg.url), msg.requestType, sender.page,
+                             sender.frame);
 });
