<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>285442</bug_id>
          
          <creation_ts>2025-01-06 10:08:54 -0800</creation_ts>
          <short_desc>REGRESSION(288409@main): Tripped assertion in TestWebKitAPI.SOAuthorizationSubFrame.AuthorizationOptions</short_desc>
          <delta_ts>2025-01-06 16:46:40 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>285224</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jonathan Bedard">jbedard</reporter>
          <assigned_to name="Charlie Wolfe">charliew</assigned_to>
          <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2085089</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2025-01-06 10:08:54 -0800</bug_when>
    <thetext>TestWebKitAPI.SOAuthorizationSubFrame.AuthorizationOptions is triggering an assertion:

ASSERTION FAILED: url.protocolIsFile()
/Volumes/Data/worker/Apple-Sequoia-Debug-Build/build/Source/WebKit/UIProcess/WebProcessProxy.cpp(1455) : void WebKit::WebProcessProxy::addPreviouslyApprovedFileURL(const URL &amp;)
1   0x18afe2918 WebKit::WebProcessProxy::addPreviouslyApprovedFileURL(WTF::URL const&amp;)
2   0x18ad929cb WebKit::WebFrameProxy::loadData(std::__1::span&lt;unsigned char const, 18446744073709551615ul&gt;, WTF::String const&amp;, WTF::String const&amp;, WTF::URL const&amp;)
3   0x18a54bc93 WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0::operator()(WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt; const&amp;) const
4   0x18a54bbbd decltype(std::declval&lt;WTF::Visitor&lt;WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_1&gt;&gt;()(std::declval&lt;WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;&amp;&gt;())) std::__1::__invoke[abi:sn180100]&lt;WTF::Visitor&lt;WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_1&gt;, WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;&amp;&gt;(WTF::Visitor&lt;WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_1&gt;&amp;&amp;, WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;&amp;)
5   0x18a54bb1d std::__1::invoke_result&lt;WTF::Visitor&lt;WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_1&gt;, WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;&amp;&gt;::type std::__1::invoke[abi:sn180100]&lt;WTF::Visitor&lt;WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_1&gt;, WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;&amp;&gt;(WTF::Visitor&lt;WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_1&gt;&amp;&amp;, WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;&amp;)
6   0x18a54b973 decltype(auto) WTF::visitOneVariant&lt;0ul, WTF::Visitor&lt;WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_1&gt;, std::__1::variant&lt;WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;, WTF::String&gt;&amp;&gt;(WTF::Visitor&lt;WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_1&gt;&amp;&amp;, std::__1::variant&lt;WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;, WTF::String&gt;&amp;)
7   0x18a540068 decltype(visitOneVariant(makeVisitor(std::forward&lt;WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0&gt;(fp0), std::forward&lt;WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_1&gt;(fp0)), asVariant(std::forward&lt;std::__1::variant&lt;WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;, WTF::String&gt;&amp;&gt;(fp)))) WTF::switchOn&lt;std::__1::variant&lt;WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;, WTF::String&gt;&amp;, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_1&gt;(std::__1::variant&lt;WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;, WTF::String&gt;&amp;, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_0&amp;&amp;, WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()::$_1&amp;&amp;)
8   0x18a53fe2b WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame()
9   0x18a53ecbc WebKit::SubFrameSOAuthorizationSession::appendRequestToLoad(WTF::URL&amp;&amp;, std::__1::variant&lt;WTF::Vector&lt;unsigned char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;, WTF::String&gt;&amp;&amp;)
10  0x18a53f4bf WebKit::SubFrameSOAuthorizationSession::beforeStart()
11  0x18a531835 WebKit::NavigationSOAuthorizationSession::shouldStartInternal()
12  0x18a539562 WebKit::SOAuthorizationSession::shouldStart()
13  0x18a543052 -[WKSOAuthorizationDelegate setSession:]
14  0x18a536f0d WebKit::SOAuthorizationCoordinator::tryAuthorize(WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WebKit::WebPageProxy&amp;, WTF::Function&lt;void (bool)&gt;&amp;&amp;)
15  0x18a1ceb46 WebKit::trySOAuthorization(WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WebKit::WebPageProxy&amp;, WTF::Function&lt;void (bool)&gt;&amp;&amp;)
16  0x18a1b5256 WebKit::tryInterceptNavigation(WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WebKit::WebPageProxy&amp;, WTF::Function&lt;void (bool)&gt;&amp;&amp;)
17  0x18a1d0e4b WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction(WebKit::WebPageProxy&amp;, WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WTF::Ref&lt;WebKit::WebFramePolicyListenerProxy, WTF::RawPtrTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;&gt;&amp;&amp;)::$_0::operator()(WKNavigationActionPolicy, WKWebpagePreferences*)::&apos;lambda&apos;()::operator()()
18  0x18a1d0a99 WTF::Detail::CallableWrapper&lt;WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction(WebKit::WebPageProxy&amp;, WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WTF::Ref&lt;WebKit::WebFramePolicyListenerProxy, WTF::RawPtrTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;&gt;&amp;&amp;)::$_0::operator()(WKNavigationActionPolicy, WKWebpagePreferences*)::&apos;lambda&apos;(), void&gt;::call()
19  0x11caa6a87 WTF::Function&lt;void ()&gt;::operator()() const
20  0x11cb182e7 WTF::ensureOnMainRunLoop(WTF::Function&lt;void ()&gt;&amp;&amp;)
21  0x18a1d03d0 WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction(WebKit::WebPageProxy&amp;, WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WTF::Ref&lt;WebKit::WebFramePolicyListenerProxy, WTF::RawPtrTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;&gt;&amp;&amp;)::$_0::operator()(WKNavigationActionPolicy, WKWebpagePreferences*)
22  0x18a1d2b21 WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction(WebKit::WebPageProxy&amp;, WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WTF::Ref&lt;WebKit::WebFramePolicyListenerProxy, WTF::RawPtrTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;&gt;&amp;&amp;)::$_1::operator()(WKNavigationActionPolicy)
23  0x18a1d2d15 WTF::BlockPtr&lt;void (WKNavigationActionPolicy)&gt; WTF::BlockPtr&lt;void (WKNavigationActionPolicy)&gt;::fromCallable&lt;WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction(WebKit::WebPageProxy&amp;, WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WTF::Ref&lt;WebKit::WebFramePolicyListenerProxy, WTF::RawPtrTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;&gt;&amp;&amp;)::$_1&gt;(WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction(WebKit::WebPageProxy&amp;, WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WTF::Ref&lt;WebKit::WebFramePolicyListenerProxy, WTF::RawPtrTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;&gt;&amp;&amp;)::$_1)::&apos;lambda&apos;(void*, WKNavigationActionPolicy)::operator()(void*, WKNavigationActionPolicy) const
24  0x18a1d2ce1 WTF::BlockPtr&lt;void (WKNavigationActionPolicy)&gt; WTF::BlockPtr&lt;void (WKNavigationActionPolicy)&gt;::fromCallable&lt;WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction(WebKit::WebPageProxy&amp;, WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WTF::Ref&lt;WebKit::WebFramePolicyListenerProxy, WTF::RawPtrTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;&gt;&amp;&amp;)::$_1&gt;(WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction(WebKit::WebPageProxy&amp;, WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WTF::Ref&lt;WebKit::WebFramePolicyListenerProxy, WTF::RawPtrTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;&gt;&amp;&amp;)::$_1)::&apos;lambda&apos;(void*, WKNavigationActionPolicy)::__invoke(void*, WKNavigationActionPolicy)
25  0x109430977 -[TestSOAuthorizationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]
26  0x18a1b4b22 WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction(WebKit::WebPageProxy&amp;, WTF::Ref&lt;API::NavigationAction, WTF::RawPtrTraits&lt;API::NavigationAction&gt;, WTF::DefaultRefDerefTraits&lt;API::NavigationAction&gt;&gt;&amp;&amp;, WTF::Ref&lt;WebKit::WebFramePolicyListenerProxy, WTF::RawPtrTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::WebFramePolicyListenerProxy&gt;&gt;&amp;&amp;)
27  0x18adfb64f WebKit::WebPageProxy::decidePolicyForNavigationAction(WTF::Ref&lt;WebKit::WebProcessProxy, WTF::RawPtrTraits&lt;WebKit::WebProcessProxy&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::WebProcessProxy&gt;&gt;&amp;&amp;, WebKit::WebFrameProxy&amp;, WebKit::NavigationActionData&amp;&amp;, WTF::CompletionHandler&lt;void (WebKit::PolicyDecision&amp;&amp;)&gt;&amp;&amp;)
28  0x18adf95b7 WebKit::WebPageProxy::decidePolicyForNavigationActionAsyncShared(WTF::Ref&lt;WebKit::WebProcessProxy, WTF::RawPtrTraits&lt;WebKit::WebProcessProxy&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::WebProcessProxy&gt;&gt;&amp;&amp;, WebKit::NavigationActionData&amp;&amp;, WTF::CompletionHandler&lt;void (WebKit::PolicyDecision&amp;&amp;)&gt;&amp;&amp;)
29  0x18adf92ea WebKit::WebPageProxy::decidePolicyForNavigationActionAsync(WebKit::NavigationActionData&amp;&amp;, WTF::CompletionHandler&lt;void (WebKit::PolicyDecision&amp;&amp;)&gt;&amp;&amp;)
30  0x189ac7d9c auto void IPC::callMemberFunction&lt;WebKit::WebPageProxy, WebKit::WebPageProxy, void (WebKit::NavigationActionData&amp;&amp;, WTF::CompletionHandler&lt;void (WebKit::PolicyDecision&amp;&amp;)&gt;&amp;&amp;), std::__1::tuple&lt;WebKit::NavigationActionData&gt;, void (WebKit::PolicyDecision&amp;&amp;)&gt;(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WebKit::NavigationActionData&amp;&amp;, WTF::CompletionHandler&lt;void (WebKit::PolicyDecision&amp;&amp;)&gt;&amp;&amp;), std::__1::tuple&lt;WebKit::NavigationActionData&gt;&amp;&amp;, WTF::CompletionHandler&lt;void (WebKit::PolicyDecision&amp;&amp;)&gt;&amp;&amp;)::&apos;lambda&apos;(auto&amp;&amp;...)::operator()&lt;WebKit::NavigationActionData&gt;(auto&amp;&amp;...) const
31  0x189ac7ced decltype(std::declval&lt;WebKit::WebPageProxy&gt;()(std::declval&lt;WebKit::NavigationActionData&gt;())) std::__1::__invoke[abi:sn180100]&lt;void IPC::callMemberFunction&lt;WebKit::WebPageProxy, WebKit::WebPageProxy, void (WebKit::NavigationActionData&amp;&amp;, WTF::CompletionHandler&lt;void (WebKit::PolicyDecision&amp;&amp;)&gt;&amp;&amp;), std::__1::tuple&lt;WebKit::NavigationActionData&gt;, void (WebKit::PolicyDecision&amp;&amp;)&gt;(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WebKit::NavigationActionData&amp;&amp;, WTF::CompletionHandler&lt;void (WebKit::PolicyDecision&amp;&amp;)&gt;&amp;&amp;), std::__1::tuple&lt;WebKit::NavigationActionData&gt;&amp;&amp;, WTF::CompletionHandler&lt;void (WebKit::PolicyDecision&amp;&amp;)&gt;&amp;&amp;)::&apos;lambda&apos;(auto&amp;&amp;...), WebKit::NavigationActionData&gt;(WebKit::WebPageProxy&amp;&amp;, WebKit::NavigationActionData&amp;&amp;)

History:
https://results.webkit.org/?suite=api-tests&amp;test=TestWebKitAPI.SOAuthorizationSubFrame.AuthorizationOptions&amp;style=debug

Not the only test that&apos;s tripping this assertion, but seems to be representative.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2085097</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2025-01-06 10:24:02 -0800</bug_when>
    <thetext>&lt;rdar://problem/142424622&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2085099</commentid>
    <comment_count>2</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2025-01-06 10:28:37 -0800</bug_when>
    <thetext>Timeout in `TestWebKitAPI.WKBackForwardList.BackForwardListRemoveAndAddSubframes` also appears to be related.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2085133</commentid>
    <comment_count>3</comment_count>
    <who name="Charlie Wolfe">charliew</who>
    <bug_when>2025-01-06 11:47:32 -0800</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/38581</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2085257</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-01-06 16:46:38 -0800</bug_when>
    <thetext>Committed 288493@main (03914208e771): &lt;https://commits.webkit.org/288493@main&gt;

Reviewed commits have been landed. Closing PR #38581 and removing active labels.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>