jernoble
WebCore security specialist
Summary
Works almost entirely on the media stack — HTML media elements, fullscreen/PiP, EME and MSE, text tracks and WebVTT, AirPlay session handling — with most of the code landing in WebCore and the Cocoa platform layer that wraps AVFoundation. The pattern is regression repair plus a sustained push of spec-conformance tests across Fullscreen, MediaCapture, and TextTrack, so newly covered spec corners tend to appear here first; the small security cluster is media-parsing and lifetime bugs rather than memory-safety hardening (a MIMETypeCache data race, negative timeScale/duration in sample boxes, and content sniffed as video/mp2t being loadable as HTML). Systematic-variant candidate: the sample-box validation and MSE buffer-eviction paths (TrackBuffer::removeCodedFrames crashed here recently) are where malformed-container assumptions keep surfacing, and MIME/codec-string handling has produced both a race and a type-confusion in the same window.
Components
Security Fix History
- 2026-08-22 [WebCore] Memory underflow in PlatformRawAudioData::copyTo() ·
- 2026-07-03 Data race on MIMETypeCache::m_cachedResults / m_supportedTypes in MIMETypeCache::canDecodeType ·
- 2026-06-30 MockSampleBox should not have negative timeScales and duration ·
- 2026-04-30 Content served as video/mp2t can be loaded as html CVE-2026-28871
- 2026-04-16 [Cocoa] Inifite scrolling video websites can cause window server jetsams
- 2026-04-03 HTMLMediaElement preservesPitch=true does not work when using AudioContext
- 2026-03-03 Integer underflow in AudioResamplerKernel::getSourceSpan() CVE-2026-20652
Hardening Commits
- No hardening commits recorded
Recent Commits
- 2026-08-26 [macOS] YouTube.com audio continues to play after tab is closed
- 2026-08-25 [macOS] YouTube.com audio continues to play after tab is closed
- 2026-08-25 [iPhone] Chess.com: video lessons cannot be put into fullscreen
- 2026-08-22 [WebCore] Memory underflow in PlatformRawAudioData::copyTo() ·
- 2026-08-21 REGRESSION(312373@main): [iPad] Spotify music videos fail to play
- 2026-08-18 Support writing ISOBoxes as well as reading/parsing
- 2026-08-18 [WPT] Enable css/selectors/media/media-loading-state-timing.sub.html
- 2026-08-17 [WPT] Fix css/selectors/media/sound-state.html
- 2026-07-27 REGRESSION(316238@main): YouTube captions become infinitely tall in iPhone fullscreen
- 2026-07-27 [Testing] Add more mock- tests for EME
- 2026-07-21 [WPT] Enable (most) picture-in-picture tests
- 2026-07-20 [visionOS] Update Surroundings Effect to None when Lightspill is available
- 2026-07-16 [Cleanup] Add logging to WebAVPlayerLayerView
- 2026-07-14 REGRESSION(312759@main): Multiple TestWebKitAPI.WebKitLegacy.* fail with debug assert
- 2026-07-13 [Fullscreen] Add tests for untested areas of the Fullscreen API specification