Update pc/ to not use implicit T* --> scoped_refptr<T> conversion
Bug: webrtc:13464
Change-Id: I729ec2306ec0d6df2e546b5dbb530f57065d60da
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/244090
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35623}
diff --git a/pc/media_stream.cc b/pc/media_stream.cc
index 08a2a72..f353af7 100644
--- a/pc/media_stream.cc
+++ b/pc/media_stream.cc
@@ -12,6 +12,7 @@
#include <stddef.h>
+#include <utility>
#include <vector>
#include "rtc_base/checks.h"
@@ -41,11 +42,13 @@
}
bool MediaStream::AddTrack(VideoTrackInterface* track) {
- return AddTrack<VideoTrackVector, VideoTrackInterface>(&video_tracks_, track);
+ return AddTrack<VideoTrackVector, VideoTrackInterface>(
+ &video_tracks_, rtc::scoped_refptr<VideoTrackInterface>(track));
}
bool MediaStream::RemoveTrack(AudioTrackInterface* track) {
- return RemoveTrack<AudioTrackVector>(&audio_tracks_, track);
+ return RemoveTrack<AudioTrackVector>(
+ &audio_tracks_, rtc::scoped_refptr<AudioTrackInterface>(track));
}
bool MediaStream::RemoveTrack(VideoTrackInterface* track) {
@@ -69,11 +72,12 @@
}
template <typename TrackVector, typename Track>
-bool MediaStream::AddTrack(TrackVector* tracks, Track* track) {
+bool MediaStream::AddTrack(TrackVector* tracks,
+ rtc::scoped_refptr<Track> track) {
typename TrackVector::iterator it = FindTrack(tracks, track->id());
if (it != tracks->end())
return false;
- tracks->push_back(track);
+ tracks->emplace_back(std::move((track)));
FireOnChanged();
return true;
}