Change information
Commit message:
[M148] [remoting] Fix Use-after-Free in WebrtcVideoRendererAdapter
Original change's description:
> [remoting] Fix Use-after-Free in WebrtcVideoRendererAdapter
>
> WebrtcVideoRendererAdapter registered itself as a sink on the first
> track of a MediaStream but was re-querying the stream for its first
> track during destruction. If the tracks were changed via SDP
> renegotiation, it could unregister from the wrong track, leaving a
> dangling pointer in the original track.
>
> This CL fixes the issue by caching the track the adapter is registered
> on and using that cached track for unregistration in the destructor
> and in SetMediaStream.
>
> Bug: 501722605
> Change-Id: I5adf5b2acdc1c60095892f549ac65aa9d74e7cdc
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7757703
> Reviewed-by: Yuwei Huang <yuw...@chromium.org>
> Commit-Queue: Joe Downing <joe...@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1613974}
(cherry picked from commit 2fb4251778d90fe19c011a207c009a39db2e9fa1)
Bug: 503210983,501722605
Change-Id: I5adf5b2acdc1c60095892f549ac65aa9d74e7cdc
Cr-Commit-Position: refs/branch-heads/7778@{#1498}
Cr-Branched-From: 77f495ee216d4c3cc784d33658bad4778c0680ee-refs/heads/main@{#1610480}
Files:
- M remoting/protocol/BUILD.gn
- M remoting/protocol/webrtc_video_renderer_adapter.cc
- M remoting/protocol/webrtc_video_renderer_adapter.h
- A remoting/protocol/webrtc_video_renderer_adapter_unittest.cc
Change size: M
Delta: 4 files changed, 120 insertions(+), 11 deletions(-)
Branch: refs/branch-heads/7778