[webkit-changes] [WebKit/WebKit] 1dd42b: MediaStreamTrackProcessor should not be destroyed ...
youennf
noreply at github.com
Wed Jan 24 02:48:13 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 1dd42ba248d5a42d0142a2a0134b23ec189ff1cf
https://github.com/WebKit/WebKit/commit/1dd42ba248d5a42d0142a2a0134b23ec189ff1cf
Author: Youenn Fablet <youennf at gmail.com>
Date: 2024-01-24 (Wed, 24 Jan 2024)
Changed paths:
M Source/WebCore/Modules/fetch/FetchBodySource.h
M Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.cpp
M Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.h
M Source/WebCore/Modules/streams/ReadableStreamSource.h
M Source/WebCore/Modules/webtransport/DatagramSource.h
M Source/WebCore/Modules/webtransport/WebTransportBidirectionalStreamSource.h
M Source/WebCore/Modules/webtransport/WebTransportReceiveStreamSource.h
M Source/WebCore/fileapi/Blob.cpp
M Source/WebKit/WebProcess/Network/WebTransportReceiveStreamSource.h
Log Message:
-----------
MediaStreamTrackProcessor should not be destroyed if its ReadableStream source is live
https://bugs.webkit.org/show_bug.cgi?id=267932
rdar://121465569
Reviewed by Eric Carlson.
We want to keep MediaStreamTrackProcessor alive if its ReadableStream source is alive, so that we can pipe the received video frames to the source.
To do this, MediaStreamTrackProcessor::Source is no longer RefCounted but will use its MediaStreamTrackProcessor ref count.
We make ReadableStreamSource no longer refcounted so that MediaStreamTrackProcessor::Source can do its own ref/deref.
We introduce RefCountedReadableStreamSource for other existing ReadableStream sources.
* Source/WebCore/Modules/fetch/FetchBodySource.h:
* Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.cpp:
(WebCore::MediaStreamTrackProcessor::readable):
* Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.h:
* Source/WebCore/Modules/streams/ReadableStreamSource.h:
* Source/WebCore/Modules/webtransport/DatagramSource.h:
* Source/WebCore/Modules/webtransport/WebTransportBidirectionalStreamSource.h:
* Source/WebCore/Modules/webtransport/WebTransportReceiveStreamSource.h:
* Source/WebCore/fileapi/Blob.cpp:
(WebCore::Blob::stream):
* Source/WebKit/WebProcess/Network/WebTransportReceiveStreamSource.h:
Canonical link: https://commits.webkit.org/273400@main
More information about the webkit-changes
mailing list