Bug 227866

Summary: [MSE] CompletionHandler may not always be called in SourceBufferPrivate::didReceiveInitializationSegment
Product: WebKit Reporter: Jean-Yves Avenard [:jya] <jean-yves.avenard>
Component: MediaAssignee: Nobody <webkit-unassigned>
Status: NEW    
Severity: Normal CC: webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Jean-Yves Avenard [:jya]
Reported 2021-07-11 21:23:39 PDT
If the initialisation segment received in SourceBufferPrivate::didReceiveInitializationSegment is invalid; then the CompletionHandler will not be called; which would assert in the CompletionHandler destructor void SourceBufferPrivate::didReceiveInitializationSegment(SourceBufferPrivateClient::InitializationSegment&& segment, CompletionHandler<void()>&& completionHandler) { if (!m_client) { completionHandler(); return; } if (m_receivedFirstInitializationSegment && !validateInitializationSegment(segment)) { m_client->sourceBufferPrivateAppendError(true); return; } ... } if validateInitializationSegment(segment) returns false; then we will error, and return. But this would assert once completionHandler goes out of scope.
Attachments
Radar WebKit Bug Importer
Comment 1 2021-07-11 21:23:58 PDT
Note You need to log in before you can comment on or make changes to this bug.