Skip to content

Commit bf293f4

Browse files
Merge pull request #1421 from paullouisageneau/prevent-vs-code-analysis-warning
Prevent dangling pointer warning with Visual Studio code analysis
2 parents 3ce8bf2 + a92eb8b commit bf293f4

1 file changed

Lines changed: 6 additions & 4 deletions

File tree

src/impl/peerconnection.cpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -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) {
10821083
void 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

Comments
 (0)