cdumez
WebCore security specialist
Summary
cdumez works primarily across WebCore and the WebKit UIProcess/IPC layer, with a recurring third track in WTF. The pattern is a sustained hardening campaign rather than isolated fixes: Safer CPP cleanups (uncounted locals, lambda captures, forward declarations), thread-safety annotations on cross-thread state, and API changes that make invalid states unrepresentable — encoding-typed CString variants (UTF8CString/ASCIICString), a WTF::UUID that cannot carry an invalid value over IPC, and a privatized `String(std::span<const char>)` constructor. The security fixes cluster on the compromised-WebContent threat model — a MESSAGE_CHECK regression in SetRawCookie, unvalidated `numberOfFrames` in remote audio sample delivery, transient-activation validation relocated to the UIProcess — making recently added or refactored IPC entry points a systematic-variant candidate, alongside the ShareDataReader use-after-free as an example of the completion-handler lifetime class in the same layer.
Components
Security Fix History
- 2026-09-18 Validate numberOfFrames in SpeechRecognitionRemoteRealtimeMediaSourceManager::remoteAudioSamplesAvailable ·
- 2026-09-17 Crash under configureForAdvancedPrivacyProtections() due to thread safety issue 2026-W37
- 2026-09-14 Regression(320304@main) SetRawCookie's MESSAGE_CHECK lets a compromised WebContent process write cookies for other origi 2026-W37
- 2026-09-08 Validate transient user activation in UIProcess for async clipboard reads ·
- 2026-09-02 Trusted Types enforcement in Document.execCommand should be case-insensitive ·
- 2026-09-02 [WebCore] use-after-free in ShareDataReader::didFinishLoading: cancel() called on freed this after completionHandler des ·
- 2026-08-28 WebEvent and its subclasses should always be heap-allocated 2026-W34
- 2026-08-13 UAF in ManualSlotAssignment via WeakHashMap rehash during reentrant composed-tree teardown 2026-W32
- 2026-07-29 AdaptiveStringSearcher good-suffix shift table is one element too small 2026-W30
- 2026-07-15 REGRESSION(316617@main): Use-after-free in IPC::Connection::SyncMessageState::~SyncMessageState() 2026-W28
- 2026-07-03 [WebKit Process Model] missing MESSAGE_CHECK_URL on error.failingURL() in WebPageProxy::didFailLoadForFrame 2026-W26
- 2026-07-03 Assert RunLoop::Timer is stopped and destroyed on its own run loop's thread 2026-W26
- 2026-07-02 [WebKit Process Model] WebPageProxy::createNewPage missing hasGrantedSandboxExtensionForFile check on NavigationActionDa
- 2026-07-02 UAF in WebContent due to Cross-thread destruction race of worker DeferredPromise via Permissions::query() + worker.termi ·
- 2026-07-02 Compromised Web Content can use a navigation-response Download policy on a data: URL to write attacker-controlled bytes · CVE-2026-43701
- 2026-07-01 Cross-Origin Iframe Can Read Clipboard via Top-Level User Interaction in Safari · CVE-2026-43713
- 2026-07-01 Data race in JSTextTrackCue::visitAdditionalChildrenInGCThread leading to use-after-free (variant of bug 311800) ·
- 2026-07-01 Type confusion via raw Exception cell returned to script from callPromisePairFunction when throwVMError bypasses sentine 2026-W26
- 2026-07-01 Missing validation of frameInfo in WebFrameProxy::getFrameInfo() ·
- 2026-07-01 Use-after-free in WebPageProxy::sendToWebPage from off-main-thread WKMarketplaceKit completion (interceptMarketplaceKitN ·
- 2026-07-01 Use-after-free in HistoryController::recursiveGoToItem — popstate-reentrant setChildItem reallocates iterated m_children ·
- 2026-07-01 Cross-Thread UAF Write in AsyncFileStream::read via NetworkDataTaskBlob ·
- 2026-07-01 Use-after-free on SecurityOrigin in NavigationScheduler::scheduleLocationChange ·
- 2026-07-01 Cross-Thread Destruction of BlobData Races Non-Thread-Safe RefCounted<BlobDataFileReference> Leads to UAF ·
- 2026-07-01 [WebKit Process Model | All] isDisallowedTypeForReadBuffer uses case-sensitive isEqualToString: while UIPasteboard resol ·
- 2026-06-30 Fix data race on m_outgoingMessageQueueIsGrowingLargeCallback in IPC::Connection ·
- 2026-06-30 [WebCore] TransformStream type confusion when Array.prototype[Symbol.iterator] is overridden · CVE-2026-43705
- 2026-06-30 UAF due to cross-thread destruction of worker DeferredPromise in WebLockManager::query() ·
- 2026-06-30 [WebKit Networking] continueWillSendRequest m_redirectionForCurrentNavigation early-return reaches Cache::storeRedirect ·
- 2026-06-30 [WebCore][bindings] Empty JSValue returned to script from callPromisePairFunction when argument conversion throws ·
- 2026-06-30 [WebKit Process Model] Use-after-free in WebExtensionContext::storageSet from HashMap mutation during keys() iteration ·
- 2026-06-30 Use-after-free under WebsiteDataStore::beginAppBoundDomainCheck() ·
- 2026-06-29 [IndexedDB] IDBKeyData validation on CoreIPC should reject invalid key types ·
- 2026-06-29 [CoreIPC] [NP] CoreIPCNSURLRequest bodyParts Forwarded to CFNetwork Leads to Arbitrary File Exfiltration ·
- 2026-06-29 [WebKit Process Model | All] Wrong-container end() comparison in WebFrameProxy::nextSibling/previousSibling ·
- 2026-06-29 use-after-free in CloseWatcher::destroy(): abort-signal algorithm calls destroy() via WeakPtr while CloseWatcherManager ·
- 2026-06-27 [WebKit Process Model] missing sender-ownership validation in 12 process-global identifier-map lookups ·
- 2026-06-26 [WebKit Process Model | All] WebContent-supplied origin forwarded to system service without UI-process re-derivation at 2026-W25
- 2026-06-24 REGRESSION(314874@main): CRASH in LazyLoadVideoObserver::observe() after document teardown 2026-W25
- 2026-06-23 NetworkBroadcastChannelRegistry crashes on a BroadcastChannel message with a null name 2026-W25
- 2026-06-15 Potential use-after-free under JSAttr::visitAdditionalChildren() ·
- 2026-06-15 [CoreIPC][GPU] Use-after-free on `ControlFactory::singleton()` due to usage of non-thread-safe RefCounted ·
- 2026-06-15 [CoreIPC] TOCTOU in `logOnBehalfOfWebContent` leads to logging of OOB memory ·
- 2026-06-10 WebSWClientConnection::notifyRecordResponseBodyChunk uses a HashMap iterator across an arbitrary callback 2026-W23
- 2026-06-05 WebKit NetworkProcess: CORS bypass via unvalidated SetCORSDisablingPatterns IPC 2026-W22
- 2026-06-04 Fix signed integer overflow (UB) in back/forward list index handling 2026-W22
- 2026-06-02 Bad IPC from WebProcess could cause UIProcess to crash in WebPermissionControllerProxy::mostReasonableWebPageProxy() ·
- 2026-05-29 Cross-Process Page Identity Confusion in didPostMessage 2026-W21
- 2026-05-29 setRawCookie: cookie.domain unvalidated + commentURL crashes NetworkProcess ·
- 2026-05-29 SpeechRecognition ASSERT Instead of MESSAGE_CHECK for Duplicate Client ·
- 2026-05-28 Potential use after free of m_responseDocument in XMLHttpRequest::visitAdditionalChildren() ·
- 2026-05-28 Audio from SpeechSynthesis may leak to the next page on cross-origin navigation
- 2026-05-28 Potential use after free of m_stream in ReadableStreamDefaultReader::visitAdditionalChildren() ·
- 2026-05-27 Potential use after free of m_stream in ReadableStreamBYOBReader::visitAdditionalChildren() ·
- 2026-05-27 RELEASE_ASSERT in NetworkConnectionToWebProcess::scheduleResourceLoad() can be abused ·
- 2026-05-25 Cherry-pick 305413.459@safari-7624-branch (6b53aa44e133). rdar://176061288 ·
- 2026-05-25 Cherry-pick 305413.664@safari-7624-branch (db05eacaeb0c). rdar://176058395 ·
- 2026-05-24 IndexedDB Connection/Transaction Identifier Confusion 2026-W21
- 2026-05-23 didSameDocumentNavigationForFrame accepts arbitrary URL, enabling address bar spoofing ·
- 2026-03-20 Unsafe argument capture in EXTDisjointTimerQueryWebGL2::queryCounterEXT()
Hardening Commits
- 2026-09-16 [Safer CPP] Address forward-declaration warnings in Source/WebCore/inspector
- 2026-09-16 [Safer CPP] Address uncounted local variable warnings in Source/WebCore/dom
- 2026-09-15 Type the WebSocket, RTCDataChannel and log text paths as UTF8CString and remove CString's encoding-bearing constructors
- 2026-09-15 Reduce use of CString::legacyCStringPointer() in logging macros
- 2026-09-15 [Safer CPP] Address a lot of the uncounted local variable warnings in WebCore/
- 2026-09-12 Make WTF::UUID unable to hold an invalid value, so one cannot be sent over IPC
- 2026-09-11 Make WTF::UUID's empty value unnameable outside HashTraits and MarkableTraits
- 2026-09-10 Make the String(std::span<const char>) constructor private as it is error-prone
- 2026-09-09 Annotate Range's boundary points as owner-thread state
- 2026-09-08 Add missing thread-safety annotations and address potential issues they uncovered
- 2026-09-08 Allow annotating state that is read without locking on its owner thread
- 2026-09-08 Use RELEASE_ASSERT in assertIsCurrent(const RunLoop&) for extra thread safety
- 2026-09-07 [Safer CPP] Address more warnings in Source/WebKit reported by the newer static analysis
- 2026-08-29 [SaferCPP] Address more warnings in Source/WebKit found by the latest version of the static analyzer
- 2026-08-28 WebEvent and its subclasses should always be heap-allocated 2026-W34
- 2026-08-27 [SaferCPP] Address some failures found by the latest static analyzer in Source/WebKit
- 2026-08-04 Harden Biquad and DirectConvolver by routing Accelerate DSP calls through span-based VectorMath helpers
- 2026-07-28 Limit URL size at the IPC boundary to match Chrome/Blink
- 2026-07-27 Null-check m_currentUserMediaRequest before denying in requestSystemValidation callback
- 2026-07-22 BidiBrowsingContextAgent::getNextTree() should stop capture a raw pointer to `this` in the lambda
- 2026-07-13 Turn debug threading assertions added in 316457@main into release assertions
- 2026-07-03 [WebKit Process Model] missing MESSAGE_CHECK_URL on error.failingURL() in WebPageProxy::didFailLoadForFrame 2026-W26
- 2026-07-03 Assert RunLoop::Timer is stopped and destroyed on its own run loop's thread 2026-W26
- 2026-06-30 CSP: trusted-types expressions must reject trailing characters after keywords and the wildcard
- 2026-05-04 Reduce use of uncheckedDowncast for JS types in WebCore/
- 2026-04-29 Stop persisting service workers from browser extensions to disk
- 2026-04-28 Make AudioNode's ref-counting thread-safe
- 2026-04-23 [iOS] CheckedPtr crash under [WebThermalMitigationObserver thermalStateDidChange]
- 2026-04-20 Further reduce use of jsCast<>()
- 2026-04-18 Replace use of jsSecureCast<>() with downcast<>()
- 2026-04-02 Short-circuit `:is()/:where()` selector list matching on definitive match
- 2026-04-01 Use secureZeroBytes in WTF_OVERRIDE_DELETE_FOR_CHECKED_PTR to prevent dead store elimination
- 2026-03-31 FileSystem::isAncestor should check path separator boundary
- 2026-03-27 Deque's implementation truncates `size_t` to `unsigned` in a few places
- 2026-03-26 Guard against use-after-free in case of self move assignment of a BlockPtr
- 2026-03-26 Guard against null dereference in SharedBufferReference::serializableBuffer()
- 2026-03-24 Check sendMessageImpl() return value in IPC::Connection::sendSyncMessage()
- 2026-03-24 Use explicit relaxed/acq_rel memory orderings in ThreadSafeRefCounted
- 2026-03-24 Add missing threading assertions to WeakRef::get() and WeakRef::ptr()
- 2026-03-24 Turn debug assert in AtomStringImpl::remove() into a release assertion
- 2026-03-23 StringParsingBuffer's operator+=() should not take in a signed integer type
- 2026-03-23 Upgrade ASSERT in ~ThreadSafeRefCountedBase() to ASSERT_WITH_SECURITY_IMPLICATION
- 2026-03-21 Allow constructing a CheckedPtr/CheckedRef from a WeakPtr/WeakRef
- 2026-03-15 Use `const Ref` for IntersectionObserver::m_callback
- 2026-03-13 Add missing WTF_GUARDED_BY_LOCK() for IDBTransaction::m_deletedObjectStores
- 2026-03-12 Adopt NODELETE in more places in Source/WebCore
- 2026-03-12 Adopt NODELETE in more places in Source/WebKit
- 2026-03-10 Adopt LIFETIME_BOUND in more places in WebCore/platform
- 2026-03-09 Adopt LIFETIME_BOUND in more places in WebKit & WebKitLegacy
- 2026-03-09 Adopt LIFETIME_BOUND in more places in WebCore
- 2026-03-07 Adopt `LIFETIME_BOUND` annotation in more places in WebCore/style
- 2026-03-06 Adopt `LIFETIME_BOUND` annotation in more places in layout & rendering
- 2026-03-05 Adopt NODELETE in more places in Source/JavaScriptCore
- 2026-03-05 Adopt NODELETE in more places in Source/WebGPU
- 2026-03-05 Use ASSERT_WITH_SECURITY_IMPLICATION() in ThreadLikeAssertion
- 2026-03-05 Adopt `LIFETIME_BOUND` annotation in more places in WebCore/page
- 2026-03-04 Adopt `LIFETIME_BOUND` annotation in more places in CSS
- 2026-03-04 Update WeakPtr threading assertions to catch more bugs
- 2026-03-03 Do some security hardening after 308536@main
- 2026-03-03 Do not give JIT-related entitlement to com.apple.WebKit.WebContent.CaptivePortal
- 2026-03-03 Adopt `LIFETIME_BOUND` annotation in more places in WebCore/html
- 2026-03-03 Adopt `LIFETIME_BOUND` annotation in more places in svg and xml
- 2026-03-02 Update WeakPtr threading assertions to catch more bugs
- 2026-03-02 Adopt `LIFETIME_BOUND` annotation in more places in WebCore/platform
- 2026-03-02 Adopt `LIFETIME_BOUND` annotation in more places in dom and editing
- 2026-03-02 Adopt `LIFETIME_BOUND` annotation in more places in Source/WebCore/Modules
- 2026-03-01 Adopt `LIFETIME_BOUND` annotation in more places in Source/WebKit
- 2026-02-28 Adopt `LIFETIME_BOUND` annotation in more places in Source/WebKit/Shared
- 2026-02-28 Adopt `LIFETIME_BOUND` annotation in more places in the GPUProcess
Recent Commits
- 2026-09-18 Validate numberOfFrames in SpeechRecognitionRemoteRealtimeMediaSourceManager::remoteAudioSamplesAvailable ·
- 2026-09-18 [Safer CPP] Unreviewed, unskip files that are no longer failing on macOS after 321364@main
- 2026-09-18 [Safer CPP] Address most lambda capture warnings in WebCore
- 2026-09-17 Crash under configureForAdvancedPrivacyProtections() due to thread safety issue 2026-W37
- 2026-09-17 Use encoding-carrying CString types in Intl
- 2026-09-17 Stop using deprecated CString in WebPrivacyHelpers.mm
- 2026-09-16 Reduce use of CString::legacyCStringPointer() in assertion and signpost macros
- 2026-09-16 Reduce use of untyped CString
- 2026-09-16 [Safer CPP] Address forward-declaration warnings in Source/WebCore/inspector
- 2026-09-16 [Safer CPP] Address uncounted local variable warnings in Source/WebCore/dom
- 2026-09-16 Address David's post-landing review feedback about 321136@main
- 2026-09-16 Delete StringTypeAdapter<CString> and make safeStrerror() return a UTF8CString
- 2026-09-15 Unreviewed build fix after 321137@main
- 2026-09-15 Type the WebSocket, RTCDataChannel and log text paths as UTF8CString and remove CString's encoding-bearing constructors
- 2026-09-15 Make the hex digest helpers return an ASCIICString and keep their consumers typed
- 2026-09-15 Reduce use of CString::legacyCStringPointer() in logging macros
- 2026-09-15 [Safer CPP] Address a lot of the uncounted local variable warnings in WebCore/
- 2026-09-14 Regression(320304@main) SetRawCookie's MESSAGE_CHECK lets a compromised WebContent process write cookies for other origi 2026-W37
- 2026-09-14 Use SAFE_WTFLOGALWAYS instead of WTFLogAlways at call sites that reach for a raw const char*
- 2026-09-13 Share the canonical UUID string layout between WTF::UUID and FIDO AAGUID logging
- 2026-09-13 Make FileSystem::fileSystemRepresentation() return a UTF8CString and keep its consumers typed
- 2026-09-12 Make WTF::UUID unable to hold an invalid value, so one cannot be sent over IPC
- 2026-09-12 Rename toCString() to toUTF8CString() and stop PrintStream from printing an untyped CString
- 2026-09-12 GraphicsContextGL::Client::addDebugMessage() should take a std::span<const char8_t> rather than a UTF8CString
- 2026-09-11 Make WTF::UUID's empty value unnameable outside HashTraits and MarkableTraits
- 2026-09-11 Reduce use of CString::legacyCStringPointer() in the codebase
- 2026-09-11 Make String::utf8(), StringImpl::utf8() and StringView::utf8() return a UTF8CString
- 2026-09-10 Address Darin's review feedback on 320795@main
- 2026-09-10 MockRealtimeVideoSource shares five members between its capture run loop and its caller's thread without synchronization
- 2026-09-10 ImageDecoderAVFObjC mutates its sample map and sample images without the lock the decoding work queue reads them under
- 2026-09-10 Make the String(std::span<const char>) constructor private as it is error-prone
- 2026-09-10 Add CString::legacyCStringPointer() and adopt it at every utf8().data() call site
- 2026-09-10 Annotate CachedScript's decoded script state as owner-thread state
- 2026-09-10 Adopt WTF_DECLARE_OWNER_THREAD_ASSERTIONS in the remaining owner-thread classes
- 2026-09-09 Annotate Range's boundary points as owner-thread state
- 2026-09-08 Introduce CStringWithEncoding so that a CString can remember its encoding
- 2026-09-08 Add missing thread-safety annotations and address potential issues they uncovered
- 2026-09-08 Validate transient user activation in UIProcess for async clipboard reads ·
- 2026-09-08 Allow annotating state that is read without locking on its owner thread
- 2026-09-08 Use RELEASE_ASSERT in assertIsCurrent(const RunLoop&) for extra thread safety
- 2026-09-08 [Safer CPP] Drop some suppression macros that are no longer required
- 2026-09-07 [Safer CPP] Address more warnings in Source/WebKit reported by the newer static analysis
- 2026-09-03 [Safer CPP] Drop some suppression macros now that we use adoptOSObject() instead of adoptXPCObject()
- 2026-09-02 Trusted Types enforcement in Document.execCommand should be case-insensitive ·
- 2026-09-02 [WebCore] use-after-free in ShareDataReader::didFinishLoading: cancel() called on freed this after completionHandler des ·
- 2026-09-02 Drop SUPPRESS_UNCOUNTED_LOCAL for `vm` local variables in the generated bindings code
- 2026-09-02 Remove SUPPRESS_RETAINPTR_CTOR_ADOPT for dispatch_*_create() false positives
- 2026-09-02 Regression(314177@main) SetRawCookie's MESSAGE_CHECKs reject legitimate cookie writes from third-party iframes
- 2026-09-02 [Safer CPP] Drop some suppression macros now that rdar://160259918 has been fixed in the static analyzer
- 2026-09-02 [Safer CPP] Drop some suppression macros now that https://github.com/llvm/llvm-project/pull/142471 is fixed
- 2026-09-02 Avoid redundant URL parsing and decoding on the navigation path
- 2026-08-29 [SaferCPP] Address more warnings in Source/WebKit found by the latest version of the static analyzer
- 2026-08-28 Unreviewed, fix safer cpp regression from 320030@main
- 2026-08-28 WebEvent and its subclasses should always be heap-allocated 2026-W34
- 2026-08-28 Drop RefCounted's adoption requirement assertion
- 2026-08-27 [SaferCPP] Address some failures found by the latest static analyzer in Source/WebKit
- 2026-08-27 DOMParser-parsed XML script elements execute after being cloned
- 2026-08-27 Descendant and dynamic module script fetches send the wrong Referer header
- 2026-08-25 DOMException should have a stack property, like other errors
- 2026-08-25 AudioBufferSourceNode renders only silence for an out-of-bounds start() offset with a negative playbackRate
- 2026-08-25 Drop the hardening added to DOMWrapperWorld in 315505@main
- 2026-08-25 WKAttachmentTests and MediaLoading API tests are not built in the Xcode build
- 2026-08-25 AudioBufferSourceNode does not clamp out-of-range loopStart/loopEnd
- 2026-08-25 Release the jetsam boost assertion when disconnecting from an auxiliary process
- 2026-08-25 Resync domparsing WPT tests from upstream
- 2026-08-25 Bump the priority of the IPC receive queue in AuxiliaryProcesses
- 2026-08-24 AudioBufferSourceNode ignores the start() offset for a negative playbackRate
- 2026-08-24 Stop logging the Launch Services check-in info dictionary on every WebContent process launch
- 2026-08-19 REGRESSION(318278@main?)[macOS]: ASSERTION FAILED: !m_waitingForContentPolicy /Volumes/Data/worker/Apple-Tahoe-Debug-Bui
- 2026-08-17 [WPT] Resync compression tests from upstream
- 2026-08-17 [WTF] Require C++23 for the WTF Core clang module
- 2026-08-13 UAF in ManualSlotAssignment via WeakHashMap rehash during reentrant composed-tree teardown 2026-W32
- 2026-08-10 Error.isError() should return true for DOMException
- 2026-08-09 Clicking an element nested inside a checkbox/radio wrongly activates the ancestor input
- 2026-08-08 Label default action incorrectly triggers when clicked interactive content removes itself
- 2026-08-07 scrollend event is not fired when wheel-scrolling a subframe
- 2026-08-07 Rename SVGPathSegList to SVGPath to reflect its actual role
- 2026-08-07 Turn on the back/forward cache for all web-platform-tests
- 2026-08-07 Remove remaining SVGPathElement's SVGPathSegList members
- 2026-08-06 Global object attribute getters/setters throw when called as bare functions from global scope
- 2026-08-06 MediaStreamAudioSourceNode captures the wrong track and keeps playing after the track ends
- 2026-08-06 AudioWorkletNode processorerror event lacks filename, lineno and colno
- 2026-08-06 SharedWorkerGlobalScope prototype is not an immutable prototype exotic object
- 2026-08-05 AudioWorkletProcessor is torn down too early when process() returns false
- 2026-08-05 [WPT] Fix "A lone surrogate is replaced with U+FFFD" subtest in domparsing/DOMParser-parseFromString-xml-parsererror.htm
- 2026-08-05 AudioWorkletGlobalScope.currentFrame is 0 when a worklet is created while the context is suspended
- 2026-08-04 Harden Biquad and DirectConvolver by routing Accelerate DSP calls through span-based VectorMath helpers
- 2026-08-04 AudioContext.close() should reject when called on an already-closed context
- 2026-08-04 k-rate AudioParam input diverges from equivalent automation for AudioBufferSourceNode.detune
- 2026-08-04 AudioScheduledSourceNode does not fire "ended" event when not connected to the destination
- 2026-08-04 [WPT] Fix webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-loop-short-duration.html
- 2026-08-03 [Safer CPP] Address warnings in Source/WebKit/Platform/IPC/HandleMessage.h
- 2026-08-03 [Safer CPP] Unreviewed, unskip files that are unexpectedly passing on the macOS bot
- 2026-07-31 FileReader.abort() is silently ignored on a reused reader after a prior read completes
- 2026-07-30 feDropShadow ignores stdDeviation Y update when X changes
- 2026-07-30 toRelatedAcuteAngle in GeometryUtilities.cpp doesn't handle an angle greater than 270 degrees
- 2026-07-30 MediaSessionManagerInterface::sessionWillEndPlayback reorders a copy of the session set
- 2026-07-30 Drop SVGAltGlyphElement::hasValidGlyphElements() as it is dead code
- 2026-07-30 WGSL Token copy-assignment leaks the Identifier String's StringImpl on every token advance
- 2026-07-30 WGSL textureDimensions(t, level) codegen clamps mip level one past the last valid LOD
- 2026-07-30 PGM allocator reads uninitialized free_status, misclassifying live-allocation OOB as UAF
- 2026-07-30 Out-of-bounds read in WebM MIME sniffer at the 0x42 0x82 DocType check
- 2026-07-30 REGRESSION(313588@main): -webkit-border-image width flag is lost when a length edge precedes a non-length edge
- 2026-07-30 Fix several use-after-moves in the codebase
- 2026-07-30 CacheStorage size accounting can underflow and persist a corrupt size
- 2026-07-29 AdaptiveStringSearcher good-suffix shift table is one element too small 2026-W30
- 2026-07-29 Apple Pay deferred payment request is dropped when changing payment method
- 2026-07-29 WebTransport: resolve pending promise when a connection or group is cancelled before becoming ready
- 2026-07-29 OPFS FileSystemWritableFileStream quota accounting over-charges positioned writes
- 2026-07-29 WebKitTestRunner: Fix corrupted pixel hash on big-endian byte-order contexts
- 2026-07-29 [Safer CPP] Address safer cpp failures in Source/WebKit
- 2026-07-29 CacheStorageDiskStore reads a member off the IO queue instead of its isolated copy
- 2026-07-28 Cancel the in-flight SpeculativeLoad when a stale-while-revalidate revalidation times out
- 2026-07-28 Limit URL size at the IPC boundary to match Chrome/Blink
- 2026-07-28 Unreviewed, address unexpected safer cpp issue on the bot
- 2026-07-27 WebKitTestRunner: Fix out-of-bounds read in iOS PlatformWebView::keyWindow()
- 2026-07-27 Null std::optional dereference in CtapAuthenticator when a full key store is reported without authenticatorSelection
- 2026-07-27 Out-of-bounds read in CtapHidDriver when a CTAPHID_INIT response is too short
- 2026-07-27 providerDidCloseNotifications() stops closing notifications after the first persistent one
- 2026-07-27 Legacy EME generateKeyRequest returns a bogus destination URL due to leftover debug scaffolding
- 2026-07-27 Null-check m_currentUserMediaRequest before denying in requestSystemValidation callback
- 2026-07-27 RemoteAudioDestination plays stale buffer contents instead of silence on ring buffer underrun
- 2026-07-27 DeviceIdHashSaltStorage generates hash salts shorter than the validated length
- 2026-07-24 WebProcessProxy::cacheMediaMIMETypes never broadcasts cached types to other web processes
- 2026-07-24 WKWebViewTestingIOS.mm's dumpUIView() is using point.x instead of point.y
- 2026-07-24 REGRESSION(317709@main): http/tests/site-isolation/history/back-iframe-cross-site-no-bf-cache.html crashes invalidating
- 2026-07-24 WKPreferencesSetDoubleValueForKeyForTesting stores double values as booleans
- 2026-07-24 Fix double ALLOW_DEPRECATED_IMPLEMENTATIONS_BEGIN in WebViewMac.mm
- 2026-07-23 WebAutomationSession::willShowJavaScriptDialog() wheel-flush block is outside the async dispatch lambda
- 2026-07-23 WebAutomationSession::platformSimulateMouseInteraction: Single clicks sends two mousedown events, no mouse up event
- 2026-07-23 [WKWebExtensionContext loadBackgroundContentWithCompletionHandler] calls its completion handler twice on error
- 2026-07-23 [WKProcessPool _requestWebProcessTermination:] only terminates the first web process in the pool
- 2026-07-22 BidiBrowsingContextAgent::getNextTree() should stop capture a raw pointer to `this` in the lambda
- 2026-07-22 LogStream leaks its IPC connection (and Mach port / kqueue workloop) after the WebContent process exits
- 2026-07-22 Address recent safer cpp regressions in layout code
- 2026-07-21 NetworkConnectionToWebProcess::takeAllMessagesForPort terminates WebContent on a benign message-port race
- 2026-07-21 [Sandboxing] Update sandbox profiles to allow the `*at` counterparts to some syscalls
- 2026-07-21 Fix data race on SharedPreferencesForWebProcess read from the RemoteRenderingBackend work queue
- 2026-07-20 [SaferCPP] Address warnings in Source/WebKit
- 2026-07-20 NEW TEST(316388@main): [macOS iOS debug]: http/tests/ipc/createnewpage-file-body-sandbox-extension.html is constant fail
- 2026-07-17 Unreviewed, update safer cpp expectations after 317368@main
- 2026-07-17 CrashOnOverflow::overflowed() should be NODELETE
- 2026-07-16 Unreviewed Windows build fix after 317284@main
- 2026-07-16 Add logging to facilitate debugging of MACH_SEND_TOO_LARGE IPC errors
- 2026-07-15 [macOS] TestWebKitAPI.WebKit.ViewScaleFactorAfterShrinkToFit is constant failure on safari-7625-branch
- 2026-07-15 CDATA sections should be allowed at integration points during fragment parsing
- 2026-07-15 After two runs of a SMIL SVG animation, an SVG item doesn't re-appear
- 2026-07-15 REGRESSION(312187@main) AudioParam ref-counting is not thread-safe, causing a crash when a node connected to it is destr
- 2026-07-15 REGRESSION(316617@main): Use-after-free in IPC::Connection::SyncMessageState::~SyncMessageState() 2026-W28
- 2026-07-15 Fix incorrect template argument in Signals.cpp CPU(ARM) exception handling path
- 2026-07-15 calculateBase64EncodedSize() truncates its input length to unsigned, undersizing the output buffer for inputs larger tha
- 2026-07-13 hasEntitlementValueInArray() may leak value returned by SecTaskCopyValueForEntitlement()
- 2026-07-13 [Bindings] ForAllParents crashes instead of pruning when a beforeRecursion callback returns 'prune'
- 2026-07-13 [Bindings] Async-iterable argument conversions reference a nonexistent castedThis
- 2026-07-13 pairIntHash extracts the wrong bits of the 64-bit product, degrading hash distribution
- 2026-07-13 Broken interpolation in duplicate-extended-attribute error message in CodeGenerator.pm
- 2026-07-13 generate-bindings-all.pl misses supplemental dependency changes that preserve list size
- 2026-07-13 Fix bad assertions in ListHashSetLink::insertAfter() and ListHashSetLink::insertBefore()
- 2026-07-13 Fix EnabledByQuirk value-missing assertion checking the wrong extended attribute
- 2026-07-13 UUID::parse fails to reject a leading '+' in the third segment
- 2026-07-13 isUserVisibleURL() inspects the wrong bytes for %-escapes and "xn--"
- 2026-07-13 Disable the WebThread again for iOS WebKitLegacy
- 2026-07-13 Turn debug threading assertions added in 316457@main into release assertions
- 2026-07-13 WTFReportBacktraceWithStackDepth may print uninitialized stack frames when the captured stack is shallower than requeste
- 2026-07-03 Sign in with Apple unsuccessful and causes reload due to problem - Received an invalid message 'RemoteObjectRegistry_Inv
- 2026-07-03 [WebKit Process Model] missing MESSAGE_CHECK_URL on error.failingURL() in WebPageProxy::didFailLoadForFrame 2026-W26
- 2026-07-03 Assert RunLoop::Timer is stopped and destroyed on its own run loop's thread 2026-W26
- 2026-07-02 [WebKit Process Model] WebPageProxy::createNewPage missing hasGrantedSandboxExtensionForFile check on NavigationActionDa
- 2026-07-02 UAF in WebContent due to Cross-thread destruction race of worker DeferredPromise via Permissions::query() + worker.termi ·
- 2026-07-02 Regression(315450@main) boingboing.net articles often load without style
- 2026-07-02 Compromised Web Content can use a navigation-response Download policy on a data: URL to write attacker-controlled bytes · CVE-2026-43701
- 2026-07-01 Cross-Origin Iframe Can Read Clipboard via Top-Level User Interaction in Safari · CVE-2026-43713
- 2026-07-01 Data race in JSTextTrackCue::visitAdditionalChildrenInGCThread leading to use-after-free (variant of bug 311800) ·
- 2026-07-01 Type confusion via raw Exception cell returned to script from callPromisePairFunction when throwVMError bypasses sentine 2026-W26
- 2026-07-01 Missing validation of frameInfo in WebFrameProxy::getFrameInfo() ·
- 2026-07-01 Use-after-free in WebPageProxy::sendToWebPage from off-main-thread WKMarketplaceKit completion (interceptMarketplaceKitN ·
- 2026-07-01 Use-after-free in HistoryController::recursiveGoToItem — popstate-reentrant setChildItem reallocates iterated m_children ·
- 2026-07-01 Cross-Thread UAF Write in AsyncFileStream::read via NetworkDataTaskBlob ·
- 2026-07-01 Use-after-free on SecurityOrigin in NavigationScheduler::scheduleLocationChange ·
- 2026-07-01 Cross-Thread Destruction of BlobData Races Non-Thread-Safe RefCounted<BlobDataFileReference> Leads to UAF ·
- 2026-07-01 [WebKit Process Model | All] isDisallowedTypeForReadBuffer uses case-sensitive isEqualToString: while UIPasteboard resol ·
- 2026-06-30 Remove dead FTP directory listing support (ENABLE_FTPDIR)
- 2026-06-30 Fix data race on m_outgoingMessageQueueIsGrowingLargeCallback in IPC::Connection ·
- 2026-06-30 [WebCore] TransformStream type confusion when Array.prototype[Symbol.iterator] is overridden · CVE-2026-43705
- 2026-06-30 UAF due to cross-thread destruction of worker DeferredPromise in WebLockManager::query() ·
- 2026-06-30 [WebKit Networking] continueWillSendRequest m_redirectionForCurrentNavigation early-return reaches Cache::storeRedirect ·
- 2026-06-30 [WebCore][bindings] Empty JSValue returned to script from callPromisePairFunction when argument conversion throws ·
- 2026-06-30 [WebKit Process Model] Use-after-free in WebExtensionContext::storageSet from HashMap mutation during keys() iteration ·
- 2026-06-30 Use-after-free under WebsiteDataStore::beginAppBoundDomainCheck() ·
- 2026-06-30 ResourceUsageThread reads m_collectionMode off-thread without holding its lock
- 2026-06-30 CSP: trusted-types expressions must reject trailing characters after keywords and the wildcard
- 2026-06-29 [IndexedDB] IDBKeyData validation on CoreIPC should reject invalid key types ·
- 2026-06-29 [CoreIPC] [NP] CoreIPCNSURLRequest bodyParts Forwarded to CFNetwork Leads to Arbitrary File Exfiltration ·
- 2026-06-29 [WebKit Process Model | All] Wrong-container end() comparison in WebFrameProxy::nextSibling/previousSibling ·
- 2026-06-29 use-after-free in CloseWatcher::destroy(): abort-signal algorithm calls destroy() via WeakPtr while CloseWatcherManager ·
- 2026-06-29 CSP: nonce-source and hash-source must reject trailing characters after the closing quote
- 2026-06-29 LocalFrameViewLayoutContext::removeScrollerFromAnchorScrollAdjusters mutates m_anchorScrollAdjusters while iterating it
- 2026-06-29 UserAgentStringParser stores the Safari product version into the wrong field
- 2026-06-29 FileReader.readAsText() ignores the charset parameter of the Blob's type
- 2026-06-29 DeleteSelectionCommand leaves an empty trailing table row behind after deletion
- 2026-06-27 [WebKit Process Model] missing sender-ownership validation in 12 process-global identifier-map lookups ·
- 2026-06-26 WebContent process termination due to MESSAGE_CHECK in WebProcessProxy::didPostMessage()
- 2026-06-26 [WebKit Process Model | All] WebContent-supplied origin forwarded to system service without UI-process re-derivation at 2026-W25
- 2026-06-26 REGRESSION(315609@main) [iOS] TestWebKitAPI.WKNavigation.PreferredHTTPSPolicyAutomaticHTTPFallbackAfterTerminateProcess
- 2026-06-26 Avoid serializing and re-parsing the navigation URL twice in NavigationActionData
- 2026-06-25 ViewTransition::m_initialPageZoom may be used uninitialized
- 2026-06-25 KeyboardEvent/MouseEvent getModifierState("AltGraph") always returns false
- 2026-06-24 Rename SaturatedArithmetic.h and its APIs to "Saturating" for clarity
- 2026-06-24 REGRESSION(314874@main): CRASH in LazyLoadVideoObserver::observe() after document teardown 2026-W25
- 2026-06-23 NetworkBroadcastChannelRegistry crashes on a BroadcastChannel message with a null name 2026-W25
- 2026-06-23 EditingRange with an overflowing location + length crashes the UIProcess on IPC decode
- 2026-06-23 TreeWalker::setCurrent() fails to grab the lock
- 2026-06-23 GCReachableRef's HashTraits peek()/take() use the wrong value type
- 2026-06-22 Position::equals() compares against the wrong position's offset for after-children anchors
- 2026-06-22 MediaList.appendMedium() should parse as a single media query and suppress duplicates
- 2026-06-22 Clean up dead code in FragmentDirective parsing and range finding
- 2026-06-22 MediaList.deleteMedium() should parse its argument and remove all matching queries
- 2026-06-22 animation-range shorthand serialization drops a 0% offset on animation-range-end
- 2026-06-22 Script-triggerable crash inserting an @namespace rule after an @import rule via CSSOM
- 2026-06-20 Avoid unnecessary URLPatternInit copies on construction
- 2026-06-20 calc() serializes 'vmax' in the wrong order relative to other dimensions
- 2026-06-20 REGRESSION(296936@main) export-w3c-test-changes fails to create a pull request when --branch-name is used
- 2026-06-19 clamp() fails to parse whitespace after 'none'
- 2026-06-19 anchor()/anchor-size() crash on a function-form zero fallback
- 2026-06-19 Crash when rehashing DOMWrapperWorld::m_wrappers hash map
- 2026-06-18 Clear-Site-Data: "cache" does not evict BFCache or MemoryCache entries due to SecurityOriginHash visibility
- 2026-06-15 Potential use-after-free under JSAttr::visitAdditionalChildren() ·
- 2026-06-15 [CoreIPC][GPU] Use-after-free on `ControlFactory::singleton()` due to usage of non-thread-safe RefCounted ·
- 2026-06-15 [CoreIPC] TOCTOU in `logOnBehalfOfWebContent` leads to logging of OOB memory ·
- 2026-06-15 :nth-child() An+B coefficients are converted from double to int without clamping
- 2026-06-15 Default toJSON() is missing an exception check after a custom getter
- 2026-06-13 CSSParserTokenRange::consumeLast() ignores its empty-range guard
- 2026-06-13 REGRESSION(235201@main): WKProcessAssertionBackgroundTaskManager can never cancel its pending release task
- 2026-06-13 random() crashes when one of its arguments is invalid at computed-value time
- 2026-06-12 Fix some uninitialized data members in WebCore/html
- 2026-06-12 REGRESSION(309877@main): window.event not restored when a window.onerror handler throws
- 2026-06-12 JSCustomElementInterface fails to visit m_connectedMoveCallback during GC
- 2026-06-12 ScreenTime data removal uses an unanchored host suffix match, deleting unrelated sites' data
- 2026-06-12 EnhancedSecuritySitesPersistence::trackEnhancedSecurityForDomain continues after a failed query and reads the wrong row
- 2026-06-12 PlaybackSessionManagerProxy::handleControlledElementIDResponse() & requestControlledElementID() fail to null check the p
- 2026-06-12 ScreenTimeWebsiteDataSupport::removeScreenTimeData() is missing a completion handler
- 2026-06-12 CloseWatcherManager::remove() mutates m_groups while iterating it
- 2026-06-12 Remove dead key-store-full detection in CtapAuthenticator
- 2026-06-11 Make sure WKFormAccessoryView unregisters itself as observer before dealloc
- 2026-06-11 Avoid crashes in [BEWebContentFilter evaluateURL:completionHandler:] calls its completion handler more than once
- 2026-06-11 [PDF] WKPDFPageNumberIndicator should not capture originMoved by reference
- 2026-06-11 CorrectionPanel's autocorrection completion handler captures WebViewImpl by a raw reference
- 2026-06-11 Avoid some ref-counting churn in OriginStorageManager
- 2026-06-11 m_scriptTrackingPrivacyDataUpdateObserver is reused for 2 observers
- 2026-06-11 Several functions in WebAuthenticatorCoordinator fail to call their completion handler on early return
- 2026-06-10 NetworkProcessProxy::dataTaskWillPerformHTTPRedirection drops its completion handler when the data task is gone
- 2026-06-10 CtapAuthenticator strands an internal continuation handler when restarting PIN during a silent credential check
- 2026-06-10 REGRESSION(259426@main): [WebAuthn] CcidConnection fails to detect legacy U2F-only keys because the applet-selection fal
- 2026-06-10 [iOS] WKWebView stuck on a blank/white screen after a quick app-switch away and back
- 2026-06-10 WebAuthenticatorCoordinatorProxy fails to return after a released WebPageProxy, causing a null deref and double reply
- 2026-06-10 RemoteLayerTreeHost::updateLayerTree may dereference a null root node for hosted transactions
- 2026-06-10 WebSWContextManagerConnection inspector handlers call main-thread-only API from a background WorkQueue
- 2026-06-10 WebSWClientConnection::notifyRecordResponseBodyChunk uses a HashMap iterator across an arbitrary callback 2026-W23
- 2026-06-10 WebSWClientConnection leaks pending callbacks when the network process connection is lost
- 2026-06-10 SharedWorker's navigator.userAgent ignores per-navigation _customUserAgent
- 2026-06-10 LocalStorageManager::cancelConnectToTransientLocalStorageArea cleans up the wrong storage area
- 2026-06-10 NetworkStorageManager::persistOrigin() may return true in case of error
- 2026-06-10 Fix unsafe capture of `this` in EventDispatcher::flushMomentumEventLoggingSoon()
- 2026-06-10 Background Fetch and Cache Storage share a single resolved-path member
- 2026-06-09 WebPageProxy::flushPending{Mouse,Key}EventCallbacks can corrupt their iteration on re-entry
- 2026-06-09 WebPageProxy::viewScaleFactorDidChange does not update m_viewScaleFactor
- 2026-06-09 Remove some dead code from our codebase
- 2026-06-09 clampToInteger<T> does not clamp values below INT_MIN
- 2026-06-09 Add missing return statements in LazyRef.h and LazyUniqueRef.h
- 2026-06-08 BlobDataTaskClient leaks completed tasks in NetworkSessionCocoa::m_blobDataTasksForAPI
- 2026-06-08 Use-after-move of frameInfo in WebPageProxy::decidePolicyForResponseShared()
- 2026-06-08 Fix missing `message == ` in XPCEndpointClient.mm
- 2026-06-08 Fix unused constructor parameter in ServiceWorkerNavigationPreloader
- 2026-06-08 Fix inverted condition in WebSWServerToContextConnection::workerTerminated
- 2026-06-08 NetworkStateNotifier on Mac reports IPv6-only networks as offline
- 2026-06-05 WebKit NetworkProcess: CORS bypass via unvalidated SetCORSDisablingPatterns IPC 2026-W22
- 2026-06-05 Remove unused CoreText composition engine SPI
- 2026-06-05 REGRESSION(314479@main): Crash in WebPushD::Connection::connectionReceivedEvent() due to xpc_object_t ODR violation
- 2026-06-05 MutationObserver.observe() incorrectly throws when attributeOldValue or characterDataOldValue is present with value fals
- 2026-06-05 Crash in WebPushD::Connection::connectionReceivedEvent() from XPC reestablishment after webpushd interruption
- 2026-06-05 PannerNode produces non-finite samples for edge-case distance parameters
- 2026-06-05 createVideoInfoFromAVCC() forms a span past the end of AVCC buffer for malformed input
- 2026-06-05 CookieStore: use the registration host/jar when removing the cookie change listener
- 2026-06-04 Region::totalArea overflows when a single rect's area exceeds INT_MAX
- 2026-06-04 Potential null deref in HIDDevice::uniqueInputElementsInDeviceTreeOrder when an HID collection has no children
- 2026-06-04 PlatformTimeRanges::containWithEpsilon checks the wrong delta for inter-range gaps
- 2026-06-04 Fix signed integer overflow (UB) in back/forward list index handling 2026-W22
- 2026-06-04 PlatformTimeRanges::operator-= constructs a Vector with two phantom Range elements
- 2026-06-04 SerializedPlatformDataCueValue::operator== is non-reflexive for default-constructed values
- 2026-06-03 MIDI and AVI MIME signatures are never matched due to typo in MIMESniffer
- 2026-06-03 Out-of-bounds read in WebM MIME sniffer when iter reaches length()
- 2026-06-03 Use-after-move in PlaybackSessionModelMediaElement::maybeUpdateVideoMetadata()
- 2026-06-03 Fix potential null deference under systemHasBattery()
- 2026-06-03 Fix potential leak in FragmentedSharedBuffer::createCMBlockBuffer()
- 2026-06-03 AudioData.copyTo accepts frameOffset == numberOfFrames instead of throwing RangeError
- 2026-06-03 Fix ignored `isKindOfClass` check in TextRecognitionResult::extractAttributedString()
- 2026-06-03 Fix undefined behavior in CacheStorageConnection::computeRecordBodySize()
- 2026-06-03 Crash in FetchRequest::initializeWith() when LocalNetworkAccess is enabled
- 2026-06-03 Fix potential null deference under globalObjectFromBodyOwner()
- 2026-06-03 FetchBody::clone() leaves m_data and m_readableStream desynchronized
- 2026-06-03 Web Locks: AbortSignal abort algorithm is never removed after a lock request settles
- 2026-06-02 Web Locks: request() with already-aborted signal rejects with synthetic AbortError instead of signal.reason
- 2026-06-02 Fix confusing `String&&` parameter to URLPatternConstructorStringParser()
- 2026-06-02 URLPattern fails to accept non-BMP code points in named groups
- 2026-06-02 reserveCapacity() call in canonicalizeIPv6Hostname() is a no-op
- 2026-06-02 Resync imported/w3c/web-platform-tests/urlpattern/urlpattern.any*.html from upstream WPT
- 2026-06-02 Bad IPC from WebProcess could cause UIProcess to crash in WebPermissionControllerProxy::mostReasonableWebPageProxy() ·
- 2026-05-30 Improve error logging related to injected bundle loading
- 2026-05-30 Several layout tests assume Secure cookies are filtered on http/ws to 127.0.0.1
- 2026-05-29 Cross-Process Page Identity Confusion in didPostMessage 2026-W21
- 2026-05-29 setRawCookie: cookie.domain unvalidated + commentURL crashes NetworkProcess ·
- 2026-05-29 SpeechRecognition ASSERT Instead of MESSAGE_CHECK for Duplicate Client ·
- 2026-05-28 Crash under WebPageProxy::createSandboxExtensionsIfNeeded()
- 2026-05-28 Potential use after free of m_responseDocument in XMLHttpRequest::visitAdditionalChildren() ·
- 2026-05-28 Audio from SpeechSynthesis may leak to the next page on cross-origin navigation
- 2026-05-28 Potential use after free of m_stream in ReadableStreamDefaultReader::visitAdditionalChildren() ·
- 2026-05-27 Potential use after free of m_stream in ReadableStreamBYOBReader::visitAdditionalChildren() ·
- 2026-05-27 RELEASE_ASSERT in NetworkConnectionToWebProcess::scheduleResourceLoad() can be abused ·
- 2026-05-25 Cherry-pick 305413.459@safari-7624-branch (6b53aa44e133). rdar://176061288 ·
- 2026-05-25 Cherry-pick 305413.664@safari-7624-branch (db05eacaeb0c). rdar://176058395 ·
- 2026-05-24 IndexedDB Connection/Transaction Identifier Confusion 2026-W21
- 2026-05-23 didSameDocumentNavigationForFrame accepts arbitrary URL, enabling address bar spoofing ·
- 2026-05-23 Safari's main thread is blocked for 58ms reading cookies
- 2026-05-23 NetworkSocketChannel leaks when a worker WebSocket is closed by the server
- 2026-05-21 claude.ai: Quirk to work around chat stuck in infinite reload loop after logout
- 2026-05-18 Unreviewed, address unexpected safer cpp failure for WasmConstExprGenerator.cpp on EWS
- 2026-05-16 Unreviewed, reverting 312175@main (c53a7f951fa0)
- 2026-05-14 WKBackForwardList.BackForwardNavigationSkipsItemsWithoutUserGesture* API tests are flaky
- 2026-05-13 HTMLElementStack::hasTemplateInHTMLScope() can return m_templateElementCount directly
- 2026-05-13 [macOS Debug] TestWebKitAPI.WKBackForwardList.BackForwardNavigationSkipsItemsWithoutUserGestureFragment is a flaky timeo
- 2026-05-13 RELEASE ASSERT: http/tests/security/contentSecurityPolicy/multipart-three-part.py is a flaky crash
- 2026-05-11 WebKit.AccessibilityChildrenPreventsProcessSuspensionOnFrontmostTab API test is flaky
- 2026-05-11 REGRESSION(304892@main?): http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration.html is a flakey te
- 2026-05-11 TestWebKitAPI.NetworkProcess.LaunchOnlyWhenNecessary is flaky
- 2026-05-09 innerText on tables emits spurious trailing newlines and drops row-exit newlines after empty rows
- 2026-05-08 Regression(312195@main): Crash in SWRegistrationDatabase when importing registrations for an origin with no records
- 2026-05-08 [iOS Simulator] ImageAnalysisTestingUtilities.h:49:61: error: unknown type name 'VKImageOrientation'
- 2026-05-08 TestWebKitAPI.WKWebsiteDataStore.FetchPersistentCredentials is flaky
- 2026-05-07 Regression(312484@main): WKWebView.MessageHandlerFromIframe times out under site isolation
- 2026-05-07 [iOS Release] imported/w3c/web-platform-tests/navigation-api/navigate-event/signal-abort-window-stop-after-intercept.htm
- 2026-05-07 [iOS] http/tests/in-app-browser-privacy/non-app-bound-domain-does-not-get-app-bound-session.html is a constant crash
- 2026-05-06 Native SSO authentication load hangs when opening a tab in the background
- 2026-05-06 REGRESSION (297757@main): [ Tahoe wk2 debug arm64 ] Multiple http/tests/iframe-monitor tests are consistent timeouts
- 2026-05-06 `ASSERTION FAILED: m_wrapper` when visiting pages in Safari in Debug
- 2026-05-05 [Tahoe Debug] TestWebKitAPI.WebKit.WKNavigationResponseDownloadAttribute is flaky failure
- 2026-05-05 Use StaticStringImpl for CSS property names and value keywords to avoid heap allocations
- 2026-05-04 Reduce use of uncheckedDowncast for JS types in WebCore/
- 2026-05-04 REGRESSION: PerformanceNavigationTiming.domInteractive and domContentLoadedEventEnd always return 0
- 2026-05-03 Skip app link and SSO interception for URLs with a registered WKURLSchemeHandler
- 2026-05-01 Add more logging in the decidePolicyForNavigationAction and SSO area
- 2026-05-01 Uninitialized memory write in WebCore::ContentExtensions::SerializedNFA::serialize
- 2026-05-01 Update the StaticStringImpl constructor to take in an ASCIILiteral
- 2026-05-01 Use StringAtom flag for StaticStringImpl in StaticString.pm
- 2026-04-30 Unreviewed, fix bad logging introduced in 312316@main
- 2026-04-30 Add more release logging for view state / activity state in the UIProcess
- 2026-04-30 Use StaticStringImpl for EventNames to avoid per-thread heap allocations
- 2026-04-29 Stop persisting service workers from browser extensions to disk
- 2026-04-29 REGRESSION (312195@main): ServiceWorkerProcessSwapWithNoDelay and WindowClientNavigate API tests failing
- 2026-04-29 Add FileSystem::traverseDirectory() to avoid redundant lstat() per directory entry
- 2026-04-29 Avoid redundant data copy in BlobStorage::get() memory cache path
- 2026-04-28 Fix use-after-move in Storage::storeBodyAsBlob()
- 2026-04-28 Import service worker registrations lazily, one top-level origin at a time
- 2026-04-28 REGRESSION:(311911@main) [macOS]fonts/font-cache-memory-pressure-crash.html is a flaky text failure.
- 2026-04-28 Make AudioNode's ref-counting thread-safe
- 2026-04-28 fonts/font-cache-memory-pressure-crash.html is treated as binary by git
- 2026-04-28 innerText should emit blank lines around <p> elements regardless of CSS display value
- 2026-04-28 REGRESSION(311624@main): LLIntAssembly.h:189:54: error: use of undeclared identifier 'jsCast'
- 2026-04-25 innerText should not emit newlines for visibility:hidden block elements
- 2026-04-24 Reduce use of C-style arrays in the codebase
- 2026-04-24 Speed up generate-bindings-all.pl by using fork() without exec()
- 2026-04-24 Remove outdated FIXME in CodeGenerator::UpdateFile
- 2026-04-24 Add `display: block` UA style rules for optgroup and option elements
- 2026-04-23 Element::setScrollLeft/setScrollTop: use clampToInteger() to avoid undefined behavior
- 2026-04-23 NodeIterator::updateForNodeRemoval: remove unreachable dead code with wrong traversal direction
- 2026-04-23 Speed up IDL bindings generation build step
- 2026-04-23 [iOS] CheckedPtr crash under [WebThermalMitigationObserver thermalStateDidChange]
- 2026-04-23 Use JSValueInWrappedObject::set() instead of setWeakly() when value is visited during GC
- 2026-04-22 Avoid calling toString() twice in replaceURLsInSrcsetAttribute()
- 2026-04-22 HTMLParserScheduler resume timer should not fire while parser yield tokens are active
- 2026-04-22 Avoid unnecessary AtomString creation in bestFitSourceForImageAttributes callers
- 2026-04-22 Implement 'dirtiness' for HTMLOptionElement
- 2026-04-22 CSS preload scanner should resolve relative @import URLs against the base element URL
- 2026-04-22 Clean up and apply minor optimizations to StyledElement
- 2026-04-22 HTMLEntityParser: minor code quality improvements
- 2026-04-22 Avoid unnecessary Document refcounting churn in HTMLPreloadScanner.cpp
- 2026-04-22 parseHTMLFloatingPointNumberValue should return fallback value on parse failure
- 2026-04-21 innerText should emit a newline for empty <option> or <optgroup> inside <select>
- 2026-04-21 Avoid repeated calls to elementNameForTag() in HTMLTreeBuilder::processEndTagForInCell()
- 2026-04-21 Unreviewed, GTK/WPE debug build fix after 311624@main.
- 2026-04-21 Use a stamp file for JS bindings generation to avoid O(n*m) make dependency overhead
- 2026-04-20 Drop jsCast<T*>() in favor of uncheckedDowncast<T>()
- 2026-04-20 Element.innerText should collect option text when called directly on a <select> element
- 2026-04-20 Further reduce use of jsCast<>()
- 2026-04-20 Reduce use of jsCast<>() in favor of uncheckedDowncast<>()
- 2026-04-19 Optimize IDL bindings generation scripts for faster build times
- 2026-04-19 Drop jsDynamicCast<>() in favor of dynamicDowncast<>()
- 2026-04-18 Replace use of jsSecureCast<>() with downcast<>()
- 2026-04-18 [WebCore] Adopt uncheckedDowncast instead of jsCast
- 2026-04-18 [WebCore] Adopt dynamicDowncast / is instead of jsDynamicCast
- 2026-04-17 innerText getter: preserve contents of <option> elements inside <select>
- 2026-04-17 innerText getter: apply ::first-line text-transform
- 2026-04-17 Make downcast / dynamicDowncast / uncheckedDowncast work with JSCell subclasses
- 2026-04-16 Cloned input/textarea elements should preserve m_wasModifiedByUser
- 2026-04-16 innerText getter: don't fall back to textContent for display:contents elements
- 2026-04-15 dir=auto on slot elements should update when slotted content changes
- 2026-04-15 EventSource should be closed when window.stop() is called
- 2026-04-15 Date/time input types without min/max should not match :in-range pseudo-class
- 2026-04-15 Null deref in WebProcess::refreshIDBConnectionForWorkers() during WebPage construction
- 2026-04-15 innerText getter: improve handling of replaced elements at block boundaries
- 2026-04-14 innerText getter: preserve newlines for white-space:pre-line
- 2026-04-14 Fix XMLSerializer namespace handling in MarkupAccumulator
- 2026-04-14 Disable "SpeculationRules prefetch" feature due to regressions
- 2026-04-14 innerText: fix whitespace handling at inline-block boundaries
- 2026-04-13 innerText getter: fix blank line handling for <p> and headings, and strip trailing block newlines
- 2026-04-13 NavigationDisabler should not block navigations in unrelated frames
- 2026-04-13 WKWebView._cachedActiveNSURL doesn't need to store the WTF::URL
- 2026-04-13 document.styleSheets should be accessible on DOMParser-created documents
- 2026-04-12 WKWebView.URL should not need not parse the URL string every time it is called
- 2026-04-12 NavigationDisabler should not block navigations in unrelated frames
- 2026-04-12 window.open() should consume user activation when creating a new browsing context
- 2026-04-11 Structured clone of SharedArrayBuffer should throw DataCloneError outside of postMessage
- 2026-04-11 Validate transferable states after serialization per spec
- 2026-04-11 Include all object elements in document named items
- 2026-04-11 Drop WKBundlePageExtendIncrementalRenderingSuppression() private API
- 2026-04-11 Crash in `XPCEndpoint::XPCEndpoint` when running `WebKit.XPCEndpoint` and letting the test runner not terminate immediat
- 2026-04-10 Fix O(n²) recalcListItems() during parsing of <select> with many <option> elements
- 2026-04-10 Unreviewed internal macOS build fix after 310909@main
- 2026-04-09 Fix canNodeBeDeletedAsync() checking the subtree root instead of each descendant during node removal
- 2026-04-09 Collapse single-case switch chains into prefix comparisons in generated NodeName.cpp
- 2026-04-09 Reduce code duplication in listBoxElementScrollIntoView() and listBoxElementBoundingBox()
- 2026-04-09 Node::registerMutationObserver() loops through all observers even after finding a match
- 2026-04-09 MutationObserver delivers childList records in wrong order when script runs during insertion
- 2026-04-09 !important should override CSS animations even when CSS transitions are also running
- 2026-04-09 Node::removeAllEventListeners() enumerates event listeners *after* removing them
- 2026-04-09 ParentNode.append() should de-duplicate nodes when the same node is passed multiple times
- 2026-04-08 Align behavior of document.createEvent() with Gecko and Blink
- 2026-04-08 Remove redundant storeDisplayContentsOrNoneStyle for pseudo-elements
- 2026-04-08 Range.extractContents should not extract out-of-bounds nodes if end container is removed during extraction
- 2026-04-07 Simplify resetStyleForNonRenderedDescendants position option cleanup
- 2026-04-07 Avoid unnecessary HashSet copy in PropertyCascade::overriddenAnimatedProperties()
- 2026-04-07 Batch plain-text characters in HTML tokenizer quoted attribute value states
- 2026-04-07 Fix copy-paste typo: check both overflow axes in scrollContainerSizeForPositionOptions
- 2026-04-07 Avoid some String allocations in WebKit by leveraging StringView more
- 2026-04-07 SVGLengthValue::valueAsPercentage() should resolve absolute units to pixels for objectBoundingBox
- 2026-04-07 Batch plain-text characters in HTML tokenizer DataState
- 2026-04-07 HTMLFormElement::length() should use the cached HTMLFormControlsCollection
- 2026-04-07 Adopt std::span in more places to avoid temporary Vector constructions
- 2026-04-07 Release animVal when animation ends in SVGAnimatedPropertyList and SVGAnimatedValueProperty
- 2026-04-06 text-autospace should handle supplementary Unicode characters
- 2026-04-06 SelectorQueryCache::add() should not evict cache entries unnecessarily
- 2026-04-06 Remove redundant selectorClosest() in SelectorDataList
- 2026-04-06 Fix url() token serialization in custom properties
- 2026-04-06 Avoid redundant scrollbar size computation in RenderBox::contentBoxLogicalHeight/Width
- 2026-04-06 Fix inverted Y-axis comparison in RenderBox::positionForPoint
- 2026-04-06 Fix bug and minor inefficiency in MatchedDeclarationsCache
- 2026-04-06 Fix event.target not being set after dispatching in shadow tree with no listeners
- 2026-04-06 Unreviewed, drop baseCharacterFromGraphemeCluster() as it is unimplemented.
- 2026-04-06 Unreviewed, drop StringView::characterStartingAt() as it is unimplemented
- 2026-04-06 Fix bug and minor inefficiencies in HTMLDocumentParser and HTMLPreloadScanner
- 2026-04-06 TextUtil::width: Fix single space width fast path to only apply to space characters
- 2026-04-05 Short-circuit isParsingTemplateContents() with O(1) containsTemplateElement() check
- 2026-04-05 Move embed to the void element case in HTMLTreeBuilder
- 2026-04-05 LocalDOMWindow: avoid redundant accessor calls
- 2026-04-05 Add modern HSL syntax fast path to CSSParserFastPaths
- 2026-04-05 Avoid temporary String allocations in CSSParserToken::serialize()
- 2026-04-05 [WTF] Rename characterAt() / characterStartingAt() to codeUnitAt() / codePointAt()
- 2026-04-05 text-transform: capitalize should handle supplementary Unicode characters
- 2026-04-05 constructTree should use the adjusted current node for integration point checks
- 2026-04-05 Avoid redundant updateValidity() in HTMLInputElement::initializeInputTypeAfterParsingOrCloning()
- 2026-04-05 view-timeline-inset serialization fails to coalesce identical non-pooled values
- 2026-04-05 Use std::optional instead of heap allocation for oldTransform in updateTransform()
- 2026-04-05 setAncestorChainHasSelfPaintingLayerDescendant should use loop variable instead of this
- 2026-04-05 Fix missing m_hasStickyAncestor check in RenderLayer::ancestorLayerPositionStateChanged
- 2026-04-05 Minor CSS parser cleanups: avoid token copy and redundant null check
- 2026-04-05 FontCascade copy constructor should copy cached m_enableKerning and m_requiresShaping instead of recomputing them
- 2026-04-05 CSSParserContext hash function is missing 4 fields that operator== compares
- 2026-04-05 CSSTokenizer::consumeEscape() should compute hex value directly instead of using StringBuilder
- 2026-04-04 Minor FontCascade cleanups: remove unused widthForCharacterInRun and fix operator==
- 2026-04-04 Drop unused LayoutRange::floorMinEdgeTo()
- 2026-04-04 Reuse childWritingMode local variable in positionInContainer()
- 2026-04-04 StringImpl::characterStartingAt should return lone surrogates instead of 0
- 2026-04-04 m_isFocusingWithValidationMessage breaks bit packing in ValidatedFormListedElement
- 2026-04-03 Avoid ref-counting churn in JSElementCustom.cpp and JSNodeCustom.cpp
- 2026-04-03 SelectorFilter::initializeParentStack() should not defeat inline vector storage
- 2026-04-03 Add missing early-exit in collectMatchingRulesForListSlow for @scope rules
- 2026-04-03 Avoid redundant traversal in CSSSelectorList::hasExplicitNestingParent()
- 2026-04-03 Address post-landing review feedback for 310458@main
- 2026-04-03 HTMLFastPathParser fails to detect nested <li> elements when outer <li> is parsed via parseSpecificElements
- 2026-04-03 Reduce over-allocation in TextCodecUTF8::encodeUTF8() for 8-bit strings
- 2026-04-03 Avoid unnecessary RefPtr copy in ElementRuleCollector::ruleMatches
- 2026-04-03 Use PseudoClassChangeInvalidation for :in-range/:out-of-range/:valid/:invalid when readonly changes
- 2026-04-02 RenderText::previousCharacter() scans entire string to find last character
- 2026-04-02 Improve `:lang()` matching: extend exact match fast path and fix singleton subtag handling
- 2026-04-02 Drop duplicate check in ComputedStyle::scrollSnapDataEquivalent()
- 2026-04-02 Short-circuit `:is()/:where()` selector list matching on definitive match
- 2026-04-02 Unnecessary ScopingRootWithDistance copies in loop in ElementRuleCollector::scopeRulesMatch()
- 2026-04-02 Short-circuit SelectorChecker::matchSelectorList() on first match
- 2026-04-02 Drop redundant `remaining < maxTokenLength` checks in Lexer.cpp
- 2026-04-02 [JSC] Use makeLatin1Identifier in parseString SIMD fast path
- 2026-04-02 Drop dead code in `Lexer<T>::lexWithoutClearingLineTerminator()`