| Index: lib/requestBlocker.js | 
| =================================================================== | 
| --- a/lib/requestBlocker.js | 
| +++ b/lib/requestBlocker.js | 
| @@ -30,7 +30,8 @@ | 
| const devtools = require("devtools"); | 
|  | 
| // Chrome can't distinguish between OBJECT_SUBREQUEST and OBJECT requests. | 
| -if (!("OBJECT_SUBREQUEST" in chrome.webRequest.ResourceType)) | 
| +if (!chrome.webRequest.ResourceType || | 
| +    !("OBJECT_SUBREQUEST" in chrome.webRequest.ResourceType)) | 
| RegExpFilter.typeMap.OBJECT_SUBREQUEST = RegExpFilter.typeMap.OBJECT; | 
|  | 
| // Map of content types reported by the browser to the respecitve content types | 
| @@ -186,7 +187,10 @@ | 
| // Chrome 58 onwards directly supports WebSocket blocking, so we can ignore | 
| // messages from the wrapper here (see https://crbug.com/129353). Hopefully | 
| // WebRTC will be supported soon too (see https://crbug.com/707683). | 
| -  if (msg.requestType.toUpperCase() in chrome.webRequest.ResourceType) | 
| +  // Edge supports neither webRequest.ResourceType nor WebSocket blocking yet: | 
| +  // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/10297376/ | 
| +  if (chrome.webRequest.ResourceType && | 
| +      (msg.requestType.toUpperCase() in chrome.webRequest.ResourceType)) | 
| return false; | 
|  | 
| return ext.webRequest.onBeforeRequest._dispatch( | 
|  |