Changeset 286327 in webkit
- Timestamp:
- Nov 30, 2021, 2:23:54 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 3 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/media/track/track-in-band-chapters-invalid-client-crash-expected.txt (added)
-
LayoutTests/media/track/track-in-band-chapters-invalid-client-crash.html (added)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/platform/graphics/avfoundation/objc/InbandChapterTrackPrivateAVFObjC.mm (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r286325 r286327 1 2021-11-30 Gabriel Nava Marino <gnavamarino@apple.com> 2 3 nullptr deref in InbandChapterTrackPrivateAVFObjC::processChapters 4 https://bugs.webkit.org/show_bug.cgi?id=233605 5 6 Reviewed by Eric Carlson. 7 8 * media/track/track-in-band-chapters-invalid-client-crash-expected.txt: Added. 9 * media/track/track-in-band-chapters-invalid-client-crash.html: Added. 10 1 11 2021-11-30 Robert Jenner <Jenner@apple.com> 2 12 -
trunk/Source/WebCore/ChangeLog
r286324 r286327 1 2021-11-30 Gabriel Nava Marino <gnavamarino@apple.com> 2 3 nullptr deref in InbandChapterTrackPrivateAVFObjC::processChapters 4 https://bugs.webkit.org/show_bug.cgi?id=233605 5 6 Reviewed by Eric Carlson. 7 8 The createChapterCue lambda gets dispatched onto the main thread. When it executes, 9 the client might no longer be valid, so we are adding a nullptr check at the start 10 of the lambda, as is done at the start of the method. 11 12 Test: media/track/track-in-band-chapters-invalid-client-crash.html 13 14 * platform/graphics/avfoundation/objc/InbandChapterTrackPrivateAVFObjC.mm: 15 (WebCore::InbandChapterTrackPrivateAVFObjC::processChapters): 16 1 17 2021-11-30 Chris Dumez <cdumez@apple.com> 2 18 -
trunk/Source/WebCore/platform/graphics/avfoundation/objc/InbandChapterTrackPrivateAVFObjC.mm
r283217 r286327 55 55 auto identifier = LOGIDENTIFIER; 56 56 auto createChapterCue = ([this, identifier] (AVMetadataItem *item, int chapterNumber) mutable { 57 if (!client()) 58 return; 57 59 ChapterData chapterData = { PAL::toMediaTime([item time]), PAL::toMediaTime([item duration]), [item stringValue] }; 58 60 if (m_processedChapters.contains(chapterData))
Note:
See TracChangeset
for help on using the changeset viewer.