@@ -843,8 +843,9 @@ void PeerConnection::iterateRemoteTracks(std::function<void(shared_ptr<Track> tr
843843 std::shared_lock lock (mTracksMutex ); // read-only
844844 locked.reserve (remote->mediaCount ());
845845 for (int i = 0 ; i < remote->mediaCount (); ++i) {
846- if (std::holds_alternative<Description::Media *>(remote->media (i))) {
847- auto remoteMedia = std::get<Description::Media *>(remote->media (i));
846+ auto media = remote->media (i);
847+ if (std::holds_alternative<Description::Media *>(media)) {
848+ auto remoteMedia = std::get<Description::Media *>(media);
848849 if (!remoteMedia->isRemoved ())
849850 if (auto it = mTracks .find (remoteMedia->mid ()); it != mTracks .end ())
850851 if (auto track = it->second .lock ())
@@ -1082,8 +1083,9 @@ void PeerConnection::processLocalCandidate(Candidate candidate) {
10821083void PeerConnection::processRemoteDescription (Description description) {
10831084 // Create tracks from remote description
10841085 for (int i = 0 ; i < description.mediaCount (); ++i) {
1085- if (std::holds_alternative<Description::Media *>(description.media (i))) {
1086- auto remoteMedia = std::get<Description::Media *>(description.media (i));
1086+ auto media = description.media (i);
1087+ if (std::holds_alternative<Description::Media *>(media)) {
1088+ auto remoteMedia = std::get<Description::Media *>(media);
10871089 std::unique_lock lock (mTracksMutex ); // we may emplace a track
10881090 if (auto it = mTracks .find (remoteMedia->mid ()); it != mTracks .end ())
10891091 continue ;
0 commit comments