cdumez
WebCore security specialist
Summary
Primarily WebCore-side web-platform conformance, with a heavy recent concentration in Web Audio — AudioWorklet lifecycle, AudioContext state transitions, k-rate AudioParam behavior, and MediaStream source nodes — alongside DOM/worker global object semantics (immutable prototypes, attribute getter receiver checks) and SVG geometry refactors. The pattern is high-volume spec-correctness work paired with WPT coverage expansion rather than dedicated security work; hardening appears as a side effect of that refactoring, e.g. routing Accelerate DSP calls in Biquad and DirectConvolver through span-based VectorMath helpers and clearing Safer CPP warnings in IPC message handling. Where to look next: the audio node teardown and lifetime bugs (processor destroyed while `process()` is still expected, source nodes outliving their tracks) are object-lifetime issues on a thread boundary between the audio render thread and main thread — good territory for use-after-free variant hunting. Enabling the back/forward cache across all web-platform-tests also widens the set of suspended-document states now exercised, which tends to surface stale-pointer bugs in anything holding page-scoped resources.
Components
Security Fix History
- 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-07-02 [WebKit Process Model] WebPageProxy::createNewPage missing hasGrantedSandboxExtensionForFile check on NavigationActionDa 2026-W26
- 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 ·
- 2026-07-01 Cross-Origin Iframe Can Read Clipboard via Top-Level User Interaction in Safari ·
- 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 ·
- 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-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-W22
- 2026-05-29 Cross-Process Page Identity Confusion in didPostMessage 2026-W21
- 2026-05-29 setRawCookie: cookie.domain unvalidated + commentURL crashes NetworkProcess 2026-W21
- 2026-05-29 SpeechRecognition ASSERT Instead of MESSAGE_CHECK for Duplicate Client 2026-W21
- 2026-05-28 Potential use after free of m_responseDocument in XMLHttpRequest::visitAdditionalChildren() 2026-W21
- 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-W21
- 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-W21
Hardening Commits
- 2026-06-13 CSSParserTokenRange::consumeLast() ignores its empty-range guard
- 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-26 Guard against null dereference in MessageSender::sendMessage()
Recent Commits
- 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-07-03 Assert RunLoop::Timer is stopped and destroyed on its own run loop's thread
- 2026-07-02 [WebKit Process Model] WebPageProxy::createNewPage missing hasGrantedSandboxExtensionForFile check on NavigationActionDa 2026-W26
- 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 ·
- 2026-07-01 Cross-Origin Iframe Can Read Clipboard via Top-Level User Interaction in Safari ·
- 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 ·
- 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-W24
- 2026-06-18 Clear-Site-Data: "cache" does not evict BFCache or MemoryCache entries due to SecurityOriginHash visibility 2026-W24
- 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-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-W22
- 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-W22
- 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-W21
- 2026-05-29 SpeechRecognition ASSERT Instead of MESSAGE_CHECK for Duplicate Client 2026-W21
- 2026-05-28 Crash under WebPageProxy::createSandboxExtensionsIfNeeded()
- 2026-05-28 Potential use after free of m_responseDocument in XMLHttpRequest::visitAdditionalChildren() 2026-W21
- 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-W21
- 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-W21
- 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()`
- 2026-04-02 Add `FillWith` tag to Vector/FixedVector constructors that fill container with a value
- 2026-04-02 Avoid heap allocation in CSSSelector::visitSimpleSelectors()
- 2026-04-01 Avoid unnecessary style invalidation in ValidatedFormListedElement::updateValidity()
- 2026-04-01 Avoid building inner text string just to compute its length in HTMLTextFormControlElement
- 2026-04-01 Skip redundant selection recomputation in HTMLTextFormControlElement::selectionChanged when called from setSelectionRang
- 2026-04-01 EventListenerMap::replace() should preserve existing listener options
- 2026-04-01 SIMD-accelerate equalIgnoringASCIICaseWithLength and equalLettersIgnoringASCIICaseWithLength
- 2026-04-01 Use secureZeroBytes in WTF_OVERRIDE_DELETE_FOR_CHECKED_PTR to prevent dead store elimination
- 2026-04-01 Fix PackedAlignedPtr::swap(T*) not updating the caller's pointer
- 2026-04-01 copyListenersNotCreatedFromMarkupToTarget() should preserve once and passive flags
- 2026-04-01 Simplify clz/ctz in MathExtras.h using C++20 std::countl_zero/std::countr_zero
- 2026-03-31 EventTarget::hasAnyEventListeners() constructs a Vector unnecessarily
- 2026-03-31 SQLiteStatement::columnName() should not implicitly call step()
- 2026-03-31 Remove broken UnspecifiedBoolType conversion operator from PackedAlignedPtr
- 2026-03-31 Fix incorrect assertion in PackedAlignedPtr::set()
- 2026-03-31 Collapse acquire load + release store into a single acq_rel fetch_sub in decrementCheckedPtrCount
- 2026-03-31 roundUpToPowerOfTwo() truncates its return value to uint32_t
- 2026-03-31 Simplify code a bit in ResourceRequestCocoa.mm
- 2026-03-31 Simplify and optimize `MessageQueue<DataType>::removeIf(Predicate&&)`
- 2026-03-31 Adopt StringView in more places in InputType classes
- 2026-03-31 StringConcatenate: Reduce redundant StringTypeAdapter constructions in tuple adapter
- 2026-03-31 Fix wrong static_cast in lvalue dynamicOSObjectCast overloads and add test coverage
- 2026-03-31 OptionSet: Clean up Iterator template, use std::has_single_bit, and make all() constexpr
- 2026-03-31 Drop redundant `std::isnan()` checks in MathExtras.h
- 2026-03-31 FileSystem::isAncestor should check path separator boundary
- 2026-03-30 Relax memory ordering for CanMakeThreadSafeCheckedPtr atomic operations
- 2026-03-30 JSON::ObjectBase::keys() returns Vector by value
- 2026-03-30 Add `LIFETIME_BOUND` annotation to IndexSet::values()
- 2026-03-30 Drop unused variable in FileSystem::directorySize()
- 2026-03-30 Fix use-after-move in IndexSparseSet::remove()
- 2026-03-30 Improve HTMLCollection memoryCost() accuracy
- 2026-03-30 Fix scanEscapedAttributeValue() in HTML fast path parser only processing one character
- 2026-03-30 Static NodeList subclasses should report their memoryCost to the GC
- 2026-03-30 Avoid compiling the pattern attribute regex twice in patternMismatch()
- 2026-03-30 Fix recursive macro in big-endian UCHARQUAD_TOUINT64
- 2026-03-30 Reversed ASSERT_ENABLED check in assertRowIsInTable()
- 2026-03-29 Remove redundant moves and dead code in FixedVector
- 2026-03-29 Simplify FixedVector move assignment operator
- 2026-03-29 Avoid redundant StepRange creation and value parsing during input validation
- 2026-03-29 Reduce code duplication in the HTML faster parser
- 2026-03-29 `FixedVector(size, value)` should not double-initialize non-POD elements
- 2026-03-28 :in-range and :out-of-range pseudo-classes are wrong for time inputs with reversed ranges
- 2026-03-28 Optimize Vector::appendVector(&&) to use bulk move instead of per-element append
- 2026-03-28 Allow underscore in attribute names in the HTML fast path parser
- 2026-03-28 Fix use-after-move in HTMLDocumentParser::insert(SegmentedString&&)
- 2026-03-28 Double attributeChanged call for nameAttr in HTMLInputElement
- 2026-03-28 Optimize Deque::takeFirst(predicate) and takeLast(predicate)
- 2026-03-28 Simplify / Optimize HTMLInputElement::isDevolvableWidget()
- 2026-03-28 Fix aliasing bugs in Vector::fill() and Vector::insertFill()
- 2026-03-28 BitVector::filterSlow fails to zero trailing words when other is inline
- 2026-03-27 Deque::swap() fails to invalidate `other`'s iterators
- 2026-03-27 Fix WeakPtr assignment operators from WeakRef to use public API instead of accessing private members
- 2026-03-27 Deque's implementation truncates `size_t` to `unsigned` in a few places
- 2026-03-27 WeakListHashSet::hasNullReferences() copies every WeakPtr
- 2026-03-27 Mark `get()` functions as `const` on WeakPtrImpl classes
- 2026-03-27 Unreviewed, drop unreachable `break;` in HTMLInputElement::hasPresentationalHintsForAttribute
- 2026-03-27 Remove redundant PtrTraits::unwrap() calls in CheckedRef
- 2026-03-27 Several operator==() operators in CheckedArithmetic.h are not marked as `const`
- 2026-03-27 Fix `isAnyOf()` for non-const `CheckedPtr&` to call `isAnyOf` instead of `is`
- 2026-03-27 Add move constructor and move assignment operator to BitVector
- 2026-03-26 Guard against use-after-free in case of self move assignment of a BlockPtr
- 2026-03-26 Fix two overflow bugs in CheckedArithmetic's division operations
- 2026-03-26 WTF::switchOnTupleAtIndex() implementation is wrong
- 2026-03-26 WTF::holdsAlternative<Variant<Ts...>>: Index-based overload uses nonexistent API
- 2026-03-26 FORWARD_VARIANT_FUNCTIONS macro is hardcoding name `value`
- 2026-03-26 BitVector::mergeSlow reads out of bounds when `this` is larger than `other`
- 2026-03-26 WTF::contains(std::span, std::span) should return a bool, not a size_t
- 2026-03-26 FragmentedSharedBuffer::toHexString() could reserve capacity before appending
- 2026-03-26 Adopt C++20's std::popcount()
- 2026-03-26 utf8Buffer() in SharedBuffer.h allocates too much memory for 8-bit strings
- 2026-03-26 Drop unimplemented function declarations on MessageSender.h
- 2026-03-26 Guard against null dereference in SharedBufferReference::serializableBuffer()
- 2026-03-26 Fix SharedBuffer:isSpanWithinBounds()
- 2026-03-26 Fix copy/paste mistake in StreamConnectionBuffer::maximumSize()
- 2026-03-26 Guard against null dereference in MessageSender::sendMessage()