[webkit-changes] [WebKit/WebKit] c9b868: Add linked-on-or-after checks for network process ...

Alex Christensen noreply at github.com
Mon Oct 21 15:53:18 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c9b868dd9fb721812f0916118270135f4dde6656
      https://github.com/WebKit/WebKit/commit/c9b868dd9fb721812f0916118270135f4dde6656
  Author: Alex Christensen <achristensen at apple.com>
  Date:   2024-10-21 (Mon, 21 Oct 2024)

  Changed paths:
    M Source/WTF/wtf/cocoa/RuntimeApplicationChecksCocoa.h
    M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp
    M Source/WebKit/UIProcess/WebProcessProxy.cpp

  Log Message:
  -----------
  Add linked-on-or-after checks for network process blob file URL checking
https://bugs.webkit.org/show_bug.cgi?id=281798
rdar://137326900

Reviewed by Brent Fulgham.

281966 at main introduced checks in the network process that verify blob URLs are allowed to be
read by a certain web process before reading them.  This required introducing IPC roundtrips
between the UI process and network process.  However, the introduction of these IPC roundtrips
subtly changed the callback sequence, and apps that rapidly call WKWebView.loadData, loadFileURL,
and loadRequest without waiting for them to finish and responding to WKNavigationDelegate's
decidePolicyForNavigationAction and decidePolicyForNavigationResponse with ...PolicyCancel
based on the callback sequence now sometimes cancel the wrong load.  To keep these apps working
until they update, I introduce a linked-on-or-after check for the IPC roundtrips and the
check in the network process they facilitate.

* Source/WTF/wtf/cocoa/RuntimeApplicationChecksCocoa.h:
* Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::shouldCheckBlobFileAccess):
(WebKit::NetworkConnectionToWebProcess::registerInternalFileBlobURL):
(WebKit::NetworkConnectionToWebProcess::registerInternalBlobURLOptionallyFileBacked):
* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::networkProcessWillCheckBlobFileAccess):
(WebKit::WebProcessProxy::assumeReadAccessToBaseURL):
(WebKit::WebProcessProxy::assumeReadAccessToBaseURLs):

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list