Opened on 01/10/2019 at 01:50:54 PM
Closed on 01/14/2019 at 10:49:47 AM
Last modified on 01/17/2019 at 04:02:43 AM
#7206 closed defect (fixed)
Notifications crash Edge
Reported by: | Ross | Assignee: | kzar |
---|---|---|---|
Priority: | P2 | Milestone: | Adblock-Plus-3.4.3-for-Chrome-Opera-Firefox |
Module: | Platform | Keywords: | externaldependency |
Cc: | sebastian, kzar, geo | Blocked By: | |
Blocking: | Platform: | Edge | |
Ready: | yes | Confidential: | no |
Tester: | Ross | Verified working: | yes |
Review URL(s): |
https://gitlab.com/eyeo/adblockplus/adblockpluschrome/merge_requests/25 |
Description (last modified by kzar)
Environment
ABP 0.9.11.2214 (Devbuild), or 0.9.11 (Release)
Edge 44.17763.1.0 / EdgeHTML 18.17763
How to reproduce
Intercept and rewrite the request to notification.adblockplus.org using a proxy to return a notification file.
OR
Append this snippet to adblockpluschrome/lib/csp.js, rebuild and reload the extension, then navigate to https://example.com:
require("notification").Notification.addNotification({ id: new Date() | 0, type: "critical", title: "Notification title", message: "<a>Open contribution page</a>", links: ["contribute"], urlFilters: ["||example.com^$document"] });
Observed behaviour
Edge crashes just after ABP makes the request for the notification file. The same notification file works fine in Chrome.
Expected behaviour
Notifications to not crash the browser.
Notes
Even simply calling the notification API from the extension's background console crashes Edge consistently! For example, try this snippet:
browser.notifications.create({ type: "basic", iconUrl: "icons/abp-16.png", title: "crash test", message: "hello world" });
See the related Microsoft Edge bug report: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/20146233/
Hints for testers
As a workaround we've stopped using the browser.notifications API on Edge. Ensure that notifications appear in the popup window instead on Edge, and that notifications still show up as normal on other platforms.
Attachments (1)
Change History (18)
comment:1 Changed on 01/10/2019 at 03:29:37 PM by kzar
- Component changed from Unknown to Platform
- Description modified (diff)
- Priority changed from Unknown to P2
- Ready set
comment:3 Changed on 01/10/2019 at 04:06:59 PM by kzar
- Description modified (diff)
- Keywords externaldependency added
comment:4 Changed on 01/10/2019 at 04:10:23 PM by kzar
Since apparently the Edge issue tracker is also having troubles, I'll attach a copy of my report here too...
Changed on 01/10/2019 at 04:11:18 PM by kzar
comment:5 follow-up: ↓ 6 Changed on 01/10/2019 at 08:59:36 PM by sebastian
What happens when navigating to a website targeted by the Adblock Warning Removal List? If this is causing Microsoft Edge to crash, we might want to address this issue before the release. Though not a regression, this would be quite critical. I suppose, if nothing else, we could just make sure to not use the notifications API on Microsoft Edge.
comment:6 in reply to: ↑ 5 Changed on 01/10/2019 at 09:55:39 PM by Ross
Can confirm it also crashes when just visiting a site targeted by the Adblock Warning Removal List (and triggering the notification).
comment:7 Changed on 01/11/2019 at 02:53:57 PM by kzar
- Review URL(s) modified (diff)
- Status changed from new to reviewing
I suppose, if nothing else, we could just make sure to not use the notifications API on Microsoft Edge.
I guess you're right, we should probably just avoid using browser.notifications entirely on Edge until Microsoft sort this out.
comment:8 Changed on 01/11/2019 at 02:54:06 PM by kzar
- Owner set to kzar
comment:9 Changed on 01/14/2019 at 10:47:33 AM by abpbot
A commit referencing this issue has landed:
Issue 7206 - Avoid using browser.notifications API on Edge!
comment:10 Changed on 01/14/2019 at 10:49:47 AM by kzar
- Milestone set to Adblock-Plus-for-Chrome-Opera-Firefox-next
- Resolution set to fixed
- Status changed from reviewing to closed
(I don't see a Adblock-Plus-For-Edge-next milestone, so hopefully this milestone is OK.)
comment:11 Changed on 01/14/2019 at 03:57:16 PM by kzar
- Description modified (diff)
comment:12 Changed on 01/14/2019 at 04:22:07 PM by kzar
- Milestone Adblock-Plus-for-Chrome-Opera-Firefox-next deleted
comment:13 Changed on 01/14/2019 at 04:22:50 PM by kzar
- Milestone set to Adblock-Plus-for-Chrome-Opera-Firefox-next
comment:14 Changed on 01/15/2019 at 01:44:19 PM by Ross
This isn't fixed in the build below yet. Although Sebastian mentioned there should be a 2221 build soon.
ABP 0.9.11.2216 (Devbuild)
Edge 44.17763.1.0 / EdgeHTML 18.17763
comment:15 Changed on 01/15/2019 at 06:35:22 PM by sebastian
Yes, this was fixed in r2218, but the current devbuild is still at 2216. Build #2223 is currently waiting to get published by Microsoft, but as long as we land new changes in master at a higher rate than the Windows Store processes submissions, we don't get a new devbuild out. ;)
comment:16 Changed on 01/16/2019 at 12:52:55 PM by Ross
- Tester changed from Unknown to Ross
- Verified working set
Ah okay, that's useful to know.
This is fixed. Doesn't crash when receiving notifications from the notificationurl or when visiting a site on the adblock warning removal list.
ABP 0.9.11.2223 (Devbuild)
Edge 44.17763.1.0 / EdgeHTML 18.17763
comment:17 Changed on 01/17/2019 at 04:02:43 AM by sebastian
- Milestone changed from Adblock-Plus-for-Chrome-Opera-Firefox-next to Adblock-Plus-3.4.3-for-Chrome-Opera-Firefox
Edge crashes when we use the browser.notifications.create API, it happens with the currently released version of Adblock Plus too. I've reported this to Microsoft, but I don't think this should block our release.