Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5e785e867f363d114dcce1fc32056b63005c163e
      
https://github.com/WebKit/WebKit/commit/5e785e867f363d114dcce1fc32056b63005c163e
  Author: Brian Weinstein <bweinst...@apple.com>
  Date:   2024-03-11 (Mon, 11 Mar 2024)

  Changed paths:
    M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionContextCocoa.mm
    M Source/WebKit/UIProcess/Extensions/WebExtensionContext.h
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIWebRequest.mm

  Log Message:
  -----------
  Fix flaky WKWebExtensionAPIWebRequest tests
https://bugs.webkit.org/show_bug.cgi?id=270824
rdar://124401551

Reviewed by Timothy Hatcher.

There were a few cascading issues here.

1) For webRequest, we were trying to create a persistent background page with 
manifest v3. This is not a supported
configuration, so it was being forced into being non-persistent.

This meant that the background page could sometimes unload, leading to the 
flakiness described in the bug.

2) After making this change, I discovered that we were attempting to load the 
background page before it was safe (before
moveLocalStorageIfNeeded was called).

To fix this, add a new variable tracking if it's safe to load the background 
view. This is set to true in loadBackgroundWebViewDuringLoad,
and checked in loadBackgroundWebViewIfNeeded before attempting to load the 
background web view.

* Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionContextCocoa.mm:
(WebKit::WebExtensionContext::loadBackgroundWebViewDuringLoad):
(WebKit::WebExtensionContext::loadBackgroundWebViewIfNeeded):
(WebKit::WebExtensionContext::loadBackgroundWebView):
* Source/WebKit/UIProcess/Extensions/WebExtensionContext.h:
(WebKit::WebExtensionContext::safeToLoadBackgroundContent const):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIWebRequest.mm:

Canonical link: https://commits.webkit.org/275955@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to