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
315849
[EME] Crash pruning a back/forward-cached page that owns an open MediaKeySession
https://bugs.webkit.org/show_bug.cgi?id=315849
Summary
[EME] Crash pruning a back/forward-cached page that owns an open MediaKeySession
Simon Pena
Reported
2026-05-29 07:39:27 PDT
WebProcess crash (debug/asserts build) when a back/forward-cached page that still owns an open MediaKeySession is pruned instead of restored: ASSERTION FAILED: !activeDOMObjectsAreSuspended() || scriptExecutionContext()->eventLoop().isSuspended() Source/WebCore/bindings/js/JSDOMPromiseDeferred.cpp(86) : void WebCore::DeferredPromise::callFunction(...) WebCore::DeferredPromise::callFunction(...) WebCore::DeferredPromise::resolve() WebCore::DOMPromiseProxy<WebCore::IDLUndefined>::resolve() WebCore::MediaKeySession::sessionClosed() WebCore::MediaKeySession::stop() WebCore::ScriptExecutionContext::stopActiveDOMObjects() WebCore::Document::commonTeardown() WebCore::CachedFrame::destroy() WebCore::CachedPage::~CachedPage() WebCore::BackForwardCache::prune(WebCore::PruningReason) Steps: open a MediaKeySession and observe session.closed, navigate away so the page enters the back/forward cache, then prune the cache (e.g. under memory pressure) instead of restoring. In release builds the closed-promise resolution is silently dropped instead.
Attachments
Add attachment
proposed patch, testcase, etc.
Simon Pena
Comment 1
2026-05-29 07:58:40 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/66027
EWS
Comment 2
2026-06-02 02:12:03 PDT
Committed
314352@main
(b09929827ab5): <
https://commits.webkit.org/314352@main
> Reviewed commits have been landed. Closing PR #66027 and removing active labels.
Radar WebKit Bug Importer
Comment 3
2026-06-02 02:13:13 PDT
<
rdar://problem/178505550
>
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