Changeset 277345 in webkit
- Timestamp:
- May 11, 2021, 5:46:17 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 5 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/media/media-source/media-source-append-buffer-full-quota-exceeded-error-expected.txt (added)
-
LayoutTests/media/media-source/media-source-append-buffer-full-quota-exceeded-error.html (added)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/Modules/mediasource/SourceBuffer.cpp (modified) (1 diff)
-
Source/WebCore/platform/graphics/SourceBufferPrivate.cpp (modified) (1 diff)
-
Source/WebCore/platform/graphics/SourceBufferPrivate.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r277340 r277345 1 2021-05-11 Toshio Ogasawara <toshio.ogasawara@access-company.com> 2 3 [MSE] QuotaExceededError Exception not thrown even if the sum of totalTrackBufferSize and appendBuffer size exceeds maximumBufferSize. 4 https://bugs.webkit.org/show_bug.cgi?id=225630 5 6 Reviewed by Eric Carlson. 7 8 * media/media-source/media-source-append-buffer-full-quota-exceeded-error-expected.txt: Added. 9 * media/media-source/media-source-append-buffer-full-quota-exceeded-error.html: Added. 10 1 11 2021-05-11 Robert Jenner <jenner@apple.com> 2 12 -
trunk/Source/WebCore/ChangeLog
r277343 r277345 1 2021-05-11 Toshio Ogasawara <toshio.ogasawara@access-company.com> 2 3 [MSE] QuotaExceededError Exception not thrown even if the sum of totalTrackBufferSize and appendBuffer size exceeds maximumBufferSize. 4 https://bugs.webkit.org/show_bug.cgi?id=225630 5 6 Reviewed by Eric Carlson. 7 8 Test: media/media-source/media-source-append-buffer-full-quota-exceeded-error.html 9 10 * Modules/mediasource/SourceBuffer.cpp: 11 (WebCore::SourceBuffer::appendBufferInternal): 12 * platform/graphics/SourceBufferPrivate.cpp: 13 (WebCore::SourceBufferPrivate::evictCodedFrames): 14 * platform/graphics/SourceBufferPrivate.h: 15 1 16 2021-05-11 Sihui Liu <sihui_liu@apple.com> 2 17 -
trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp
r276414 r277345 492 492 493 493 // 5. If the buffer full flag equals true, then throw a QuotaExceededError exception and abort these step. 494 if (m_private->bufferFull() ) {494 if (m_private->bufferFull() || m_private->totalTrackBufferSizeInBytes() + m_pendingAppendData.capacity() + size >= maximumBufferSize()) { 495 495 ERROR_LOG(LOGIDENTIFIER, "buffer full, failing with QuotaExceededError error"); 496 496 return Exception { QuotaExceededError }; -
trunk/Source/WebCore/platform/graphics/SourceBufferPrivate.cpp
r276414 r277345 640 640 // 1. Let new data equal the data that is about to be appended to this SourceBuffer. 641 641 // 2. If the buffer full flag equals false, then abort these steps. 642 if (!m_bufferFull )642 if (!m_bufferFull && totalTrackBufferSizeInBytes() + pendingAppendDataCapacity + newDataSize < maximumBufferSize) 643 643 return; 644 644 -
trunk/Source/WebCore/platform/graphics/SourceBufferPrivate.h
r277003 r277345 109 109 110 110 MediaTime timestampOffset() const { return m_timestampOffset; } 111 uint64_t totalTrackBufferSizeInBytes() const; 111 112 112 113 struct TrackBuffer { … … 169 170 void setBufferFull(bool bufferFull) { m_bufferFull = bufferFull; } 170 171 void provideMediaData(const AtomString& trackID); 171 uint64_t totalTrackBufferSizeInBytes() const;172 172 173 173 SourceBufferPrivateClient* m_client { nullptr };
Note:
See TracChangeset
for help on using the changeset viewer.