Index: content/renderer/media/webrtc/rtc_rtp_receiver.cc |
diff --git a/content/renderer/media/webrtc/rtc_rtp_receiver.cc b/content/renderer/media/webrtc/rtc_rtp_receiver.cc |
index c23a1349d4810722aa72caea012080fb2c71ca89..2755106e62258daaf8716f44a5e68611d6bc82c2 100644 |
--- a/content/renderer/media/webrtc/rtc_rtp_receiver.cc |
+++ b/content/renderer/media/webrtc/rtc_rtp_receiver.cc |
@@ -11,15 +11,6 @@ |
namespace content { |
-namespace { |
- |
-inline bool operator==(const blink::WebMediaStreamTrack& web_track, |
- const webrtc::MediaStreamTrackInterface& webrtc_track) { |
- return !web_track.IsNull() && web_track.Id() == webrtc_track.id().c_str(); |
-} |
- |
-} // namespace |
- |
uintptr_t RTCRtpReceiver::getId( |
const webrtc::RtpReceiverInterface* webrtc_rtp_receiver) { |
return reinterpret_cast<uintptr_t>(webrtc_rtp_receiver); |
@@ -27,11 +18,12 @@ uintptr_t RTCRtpReceiver::getId( |
RTCRtpReceiver::RTCRtpReceiver( |
webrtc::RtpReceiverInterface* webrtc_rtp_receiver, |
- const blink::WebMediaStreamTrack& web_track) |
- : webrtc_rtp_receiver_(webrtc_rtp_receiver), web_track_(web_track) { |
+ std::unique_ptr<WebRtcMediaStreamTrackAdapterMap::AdapterRef> track_adapter) |
+ : webrtc_rtp_receiver_(webrtc_rtp_receiver), |
+ track_adapter_(std::move(track_adapter)) { |
DCHECK(webrtc_rtp_receiver_); |
- DCHECK(!web_track_.IsNull()); |
- DCHECK(web_track_ == webrtc_track()); |
+ DCHECK(track_adapter_); |
+ DCHECK(track_adapter_->webrtc_track() == webrtc_rtp_receiver_->track()); |
} |
RTCRtpReceiver::~RTCRtpReceiver() {} |
@@ -41,8 +33,8 @@ uintptr_t RTCRtpReceiver::Id() const { |
} |
const blink::WebMediaStreamTrack& RTCRtpReceiver::Track() const { |
- DCHECK(web_track_ == webrtc_track()); |
- return web_track_; |
+ DCHECK(track_adapter_->webrtc_track() == webrtc_rtp_receiver_->track()); |
+ return track_adapter_->web_track(); |
} |
blink::WebVector<std::unique_ptr<blink::WebRTCRtpContributingSource>> |
@@ -57,11 +49,9 @@ RTCRtpReceiver::GetSources() { |
} |
const webrtc::MediaStreamTrackInterface& RTCRtpReceiver::webrtc_track() const { |
- const webrtc::MediaStreamTrackInterface* webrtc_track = |
- webrtc_rtp_receiver_->track(); |
- DCHECK(webrtc_track); |
- DCHECK(web_track_ == *webrtc_track); |
- return *webrtc_track; |
+ DCHECK(track_adapter_->webrtc_track() == webrtc_rtp_receiver_->track()); |
+ DCHECK(track_adapter_->webrtc_track()); |
+ return *track_adapter_->webrtc_track(); |
} |
} // namespace content |