Bug 210799

Summary: [WPE][GTK] webkit_user_content_manager_remove_filter() does not work reliably
Product: WebKit Reporter: Michael Catanzaro <mcatanzaro>
Component: WebKitGTKAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: aperez, bugs-noreply
Priority: P2    
Version: WebKit Nightly Build   
Hardware: PC   
OS: Linux   

Description Michael Catanzaro 2020-04-21 08:29:56 PDT
Moving from https://gitlab.gnome.org/GNOME/epiphany/-/issues/963. To reproduce, in Epiphany with the adblocker enabled:

 * Visit https://www.vox.com/2020/4/20/21227903/trump-blames-obama-coronavirus
 * Open the security popover (the lock icon) and change Advertisements permission to "Yes" (or "Allow" in git master)
 * Open web inspector with Ctrl+Shift+I and clear the console history
 * Reload the page, bypassing cache for good measure: Ctrl+Shift+R
 
Notice these logs in the console:

[Info] Content blocker prevented frame displaying https://www.vox.com/2020/4/20/21227903/trump-blames-obama-coronavirus from loading a resource from https://cdn.concert.io/lib/concert-ads/v2-latest/concert_ads.js
[Info] Content blocker prevented frame displaying https://www.vox.com/2020/4/20/21227903/trump-blames-obama-coronavirus from loading a resource from https://cdn.vox-cdn.com/packs/concert_ads-bffdbe26531979cc8e92.js
[Info] Content blocker prevented frame displaying https://www.vox.com/2020/4/20/21227903/trump-blames-obama-coronavirus from loading a resource from https://c.amazon-adsystem.com/aax2/apstag.js
[Info] Content blocker prevented frame displaying https://www.vox.com/2020/4/20/21227903/trump-blames-obama-coronavirus from loading a resource from https://cdn.concert.io/lib/concert-concierge.2.5.1.min.js
[Info] Content blocker prevented frame displaying https://www.vox.com/2020/4/20/21227903/trump-blames-obama-coronavirus from loading a resource from https://z.moatads.com/voxprebidheader841653991752/moatheader.js

But Epiphany has removed the adblock filter from this view's WebKitUserContentManager using webkit_user_content_manager_remove_filter(), so no content blockers should be enabled. Jan-Michael says the bug still occurs if he changes Epiphany to use webkit_user_content_manager_remove_all_filters() instead, so this seems to be WebKit's fault.