WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
298131
REGRESSION(
299129@main
): [ iOS Debug ]ASSERTION FAILED: !isInAuxiliaryProcess() || MediaSessionHelper::sharedHelper().presentedApplicationPID()
https://bugs.webkit.org/show_bug.cgi?id=298131
Summary
REGRESSION(299129@main): [ iOS Debug ]ASSERTION FAILED: !isInAuxiliaryProcess...
Robert Jenner
Reported
2025-08-29 16:26:49 PDT
299129@main
introduced the following assertion failure on iOS Debug: ASSERTION FAILED: !isInAuxiliaryProcess() || MediaSessionHelper::sharedHelper().presentedApplicationPID() /Volumes/Data/worker/Apple-iOS-18-Simulator-Debug-Build/build/Source/WebCore/platform/audio/cocoa/AudioSessionCocoa.mm(109) : virtual bool WebCore::AudioSessionCocoa::tryToSetActiveInternal(bool) 1 0x34467f338 WebCore::AudioSessionCocoa::tryToSetActiveInternal(bool) 2 0x34ad7d6b4 WebCore::AudioSession::tryToSetActive(bool) 3 0x133605c28 WebKit::UserMediaCaptureManagerProxySourceProxy::audioUnitWillStart() 4 0x34b4c0358 _ZZN7WebCore22CoreAudioCaptureSource18audioUnitWillStartEvENK3$_0clINS_27RealtimeMediaSourceObserverEEEDaRT_ 5 0x34b4c02fc WTF::Detail::CallableWrapper<WebCore::CoreAudioCaptureSource::audioUnitWillStart()::$_0, void, WebCore::RealtimeMediaSourceObserver&>::call(WebCore::RealtimeMediaSourceObserver&) 6 0x34b418b2c WTF::Function<void (WebCore::RealtimeMediaSourceObserver&)>::operator()(WebCore::RealtimeMediaSourceObserver&) const 7 0x34b3faa18 WTF::WeakHashSet<WebCore::RealtimeMediaSourceObserver, WTF::DefaultWeakPtrImpl, (WTF::EnableWeakPtrThreadingAssertions)1>::forEach(WTF::Function<void (WebCore::RealtimeMediaSourceObserver&)> const&) 8 0x34b3fa950 WebCore::RealtimeMediaSource::forEachObserver(WTF::Function<void (WebCore::RealtimeMediaSourceObserver&)> const&) 9 0x34b4b0e04 WebCore::CoreAudioCaptureSource::audioUnitWillStart() 10 0x34b4ac458 _ZZN7WebCore19BaseAudioSharedUnit9startUnitEvENK3$_0clINS_22CoreAudioCaptureSourceEEEDaRT_ 11 0x34b4ac3ac WTF::Detail::CallableWrapper<WebCore::BaseAudioSharedUnit::startUnit()::$_0, void, WebCore::CoreAudioCaptureSource&>::call(WebCore::CoreAudioCaptureSource&) 12 0x34b4a900c WTF::Function<void (WebCore::CoreAudioCaptureSource&)>::operator()(WebCore::CoreAudioCaptureSource&) const 13 0x34b4884d0 void WTF::ThreadSafeWeakHashSet<WebCore::CoreAudioCaptureSource>::forEach<WTF::Function<void (WebCore::CoreAudioCaptureSource&)>>(WTF::Function<void (WebCore::CoreAudioCaptureSource&)> const&) const 14 0x34b488438 WebCore::BaseAudioSharedUnit::forEachClient(WTF::Function<void (WebCore::CoreAudioCaptureSource&)> const&) const 15 0x34b488bfc WebCore::BaseAudioSharedUnit::startUnit() 16 0x34b4889e0 WebCore::BaseAudioSharedUnit::continueStartProducingData() 17 0x34b488630 WebCore::BaseAudioSharedUnit::startProducingData() 18 0x34b4b04e0 WebCore::CoreAudioCaptureSource::startProducingData() 19 0x34b3fa6b0 WebCore::RealtimeMediaSource::start() 20 0x1335fbc20 WebKit::UserMediaCaptureManagerProxySourceProxy::start() 21 0x1335fbb1c WebKit::UserMediaCaptureManagerProxy::startProducingData(WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>) 22 0x132a2574c auto void IPC::callMemberFunction<WebKit::UserMediaCaptureManagerProxy, WebKit::UserMediaCaptureManagerProxy, void (WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>>(WebKit::UserMediaCaptureManagerProxy*, void (WebKit::UserMediaCaptureManagerProxy::*)(WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>&&)::'lambda'(auto&&...)::operator()<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>(auto&&...) const 23 0x132a25650 decltype(std::declval<WebKit::UserMediaCaptureManagerProxy>()(std::declval<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>(), std::declval<WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>())) std::__1::__invoke[abi:sn190102]<void IPC::callMemberFunction<WebKit::UserMediaCaptureManagerProxy, WebKit::UserMediaCaptureManagerProxy, void (WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>>(WebKit::UserMediaCaptureManagerProxy*, void (WebKit::UserMediaCaptureManagerProxy::*)(WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>&&)::'lambda'(auto&&...), WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>(WebKit::UserMediaCaptureManagerProxy&&, WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>&&, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>&&) 24 0x132a2561c decltype(auto) std::__1::__apply_tuple_impl[abi:sn190102]<void IPC::callMemberFunction<WebKit::UserMediaCaptureManagerProxy, WebKit::UserMediaCaptureManagerProxy, void (WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>>(WebKit::UserMediaCaptureManagerProxy*, void (WebKit::UserMediaCaptureManagerProxy::*)(WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>&&)::'lambda'(auto&&...), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>, 0ul, 1ul>(WebKit::UserMediaCaptureManagerProxy&&, WebKit::UserMediaCaptureManagerProxy&&, std::__1::__tuple_indices<0ul, 1ul>) 25 0x132a255d0 decltype(auto) std::__1::apply[abi:sn190102]<void IPC::callMemberFunction<WebKit::UserMediaCaptureManagerProxy, WebKit::UserMediaCaptureManagerProxy, void (WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>>(WebKit::UserMediaCaptureManagerProxy*, void (WebKit::UserMediaCaptureManagerProxy::*)(WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>&&)::'lambda'(auto&&...), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>>(WebKit::UserMediaCaptureManagerProxy&&, WebKit::UserMediaCaptureManagerProxy&&) 26 0x132a24d54 void IPC::callMemberFunction<WebKit::UserMediaCaptureManagerProxy, WebKit::UserMediaCaptureManagerProxy, void (WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>>(WebKit::UserMediaCaptureManagerProxy*, void (WebKit::UserMediaCaptureManagerProxy::*)(WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>>&&) 27 0x132a0d8e4 void IPC::handleMessage<Messages::UserMediaCaptureManagerProxy::StartProducingData, IPC::Connection, WebKit::UserMediaCaptureManagerProxy, WebKit::UserMediaCaptureManagerProxy, void (WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>)>(IPC::Connection&, IPC::Decoder&, WebKit::UserMediaCaptureManagerProxy*, void (WebKit::UserMediaCaptureManagerProxy::*)(WTF::ObjectIdentifierGeneric<WebCore::RealtimeMediaSourceIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>, WTF::ObjectIdentifierGeneric<WebCore::PageIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits<unsigned long long>, unsigned long long>)) 28 0x132a0d1c8 WebKit::UserMediaCaptureManagerProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&) 29 0x133340b2c WebKit::UserMediaCaptureManagerProxy::didReceiveMessageFromGPUProcess(IPC::Connection&, IPC::Decoder&) 30 0x1333402e8 WebKit::GPUConnectionToWebProcess::dispatchMessage(IPC::Connection&, IPC::Decoder&) 31 0x132367e8c WebKit::GPUConnectionToWebProcess::didReceiveMessage(IPC::Connection&, IPC::Decoder&) com.apple.WebKit.GPU.Development terminated (pid 88217) for reason: crash LEAK: 6 WebPageProxy
Attachments
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2025-08-29 16:28:00 PDT
<
rdar://problem/159478772
>
Robert Jenner
Comment 2
2025-08-29 16:45:40 PDT
HISTORY:
https://results.webkit.org/?suite=layout-tests&test=imported%2Fw3c%2Fweb-platform-tests%2Fwebrtc-encoded-transform%2FRTCRtpScriptTransform-bad-chunk.https.html
The following 46 tests all seem to be hitting this assertion: fast/html/autopopover-mismatch-crash.html fast/mediastream/RTCPeerConnection-remotely-assigned-transceiver-mid.html fast/mediastream/RTCPeerConnection-setLocalDescription-offer.html fast/mediastream/RTCPeerConnection-setRemoteDescription-offer.html fast/mediastream/RTCPeerConnection-statsSelector.html fast/mediastream/media-stream-track-interrupted.html fast/mediastream/media-stream-track-muted-event.html fast/mediastream/media-stream-track-muted.html fast/mediastream/mediastream-gc.html fast/mediastream/mediastreamtrack-audio-clone.html fast/mediastream/mediastreamtrack-audio-mute.html fast/mediastream/mediastreamtrack-audiovideo-mutepage.html fast/speechrecognition/ios/start-recognition-then-stop.html fast/speechrecognition/start-recognition-after-gum.html http/tests/navigation/page-cache-mediastream.html http/tests/site-isolation/mediastream/getUserMedia-audio-starts.html http/tests/webrtc/audioSessionInFrames.html http/tests/webrtc/muted-video-mediastream-invisible-autoplay.html http/wpt/audio-output/setSinkId.https.html http/wpt/mediasession/gpuProcessCrash-voiceDetection.html http/wpt/mediasession/setCaptureState-audio-category.html http/wpt/webrtc/sframe-transform-error.html imported/w3c/web-platform-tests/FileAPI/blob/Blob-stream-sync-xhr-crash.html imported/w3c/web-platform-tests/webrtc-encoded-transform/RTCRtpScriptTransform-bad-chunk.https.html imported/w3c/web-platform-tests/webrtc-encoded-transform/tentative/RTCEncodedAudioFrame-clone.https.html imported/w3c/web-platform-tests/webrtc-encoded-transform/tentative/RTCEncodedAudioFrame-metadata.https.html imported/w3c/web-platform-tests/webrtc-encoded-transform/tentative/RTCEncodedAudioFrame-receive-cloned.https.html imported/w3c/web-platform-tests/webrtc-encoded-transform/tentative/RTCEncodedAudioFrame-send-incoming.https.html imported/w3c/web-platform-tests/webrtc-encoded-transform/tentative/RTCEncodedAudioFrame-serviceworker-failure.https.html imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-addTrack.https.html imported/w3c/web-platform-tests/webrtc/RTCRtpEncodingParameters-codec-opus-stereo.https.html imported/w3c/web-platform-tests/webrtc/legacy/RTCRtpTransceiver-with-OfferToReceive-options.optional.https.html imported/w3c/web-platform-tests/webrtc/receiver-track-live.https.html platform/ios/mediastream/getUserMedia-override-audio-session-interruption.html platform/ios/mediastream/getUserMedia-single-capture-gpu-process.html webrtc/addICECandidate-closed.html webrtc/addTransceiver-then-addTrack.html webrtc/audio-muted-stats.html webrtc/audio-peer-connection-g722.html webrtc/audio-peer-connection-webaudio.html webrtc/audio-replace-track.html webrtc/audio-samplerate-change.html webrtc/audio-sframe.html webrtc/audio-video-element-playing.html webrtc/msection-recycling.html webrtc/receiver-track-should-stay-live-even-if-receiver-is-inactive.html
Robert Jenner
Comment 3
2025-08-29 16:49:20 PDT
I was able to reproduce the assertion at iOS 18 Debug ToT running the test as follows: run-webkit-tests --iOS-simulator --debug <Insert_test_here> I was also able to validate that the regression point is
299129@main
, the assertion reproduces at that commit, but not at
299128@main
.
Alexey Proskuryakov
Comment 4
2025-09-01 10:08:03 PDT
***
Bug 298106
has been marked as a duplicate of this bug. ***
Alexey Proskuryakov
Comment 5
2025-09-01 10:08:59 PDT
From duplicate: Test gardening commit
299337@main
(2665ca866f0c): <
https://commits.webkit.org/299337@main
> But this only marked one test, not 46.
Andy Estes
Comment 6
2025-09-01 11:51:18 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/50154
EWS
Comment 7
2025-09-02 08:12:54 PDT
Committed
299430@main
(9b38c49f3703): <
https://commits.webkit.org/299430@main
> Reviewed commits have been landed. Closing PR #50154 and removing active labels.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug