From c0a610d4a4233e6ba23f6d1bab00399ff72b7e40 Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Tue, 16 Jan 2018 14:12:46 +0100 Subject: [PATCH] Fix invalid reads and writes in media session. --- src/conference/session/media-session.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/conference/session/media-session.cpp b/src/conference/session/media-session.cpp index 059fa5388..861f9d24f 100644 --- a/src/conference/session/media-session.cpp +++ b/src/conference/session/media-session.cpp @@ -3929,6 +3929,8 @@ MediaSession::MediaSession (const shared_ptr &core, shared_ptraudioStream || d->videoStream) + d->freeResources(); if (d->audioStats) linphone_call_stats_unref(d->audioStats); if (d->videoStats) @@ -4218,7 +4220,7 @@ int MediaSession::startInvite (const Address *destination, const string &subject L_D(); linphone_core_stop_dtmf_stream(getCore()->getCCore()); d->makeLocalMediaDescription(); - if (getCore()->getCCore()->ringstream && getCore()->getCCore()->sound_conf.play_sndcard && getCore()->getCCore()->sound_conf.capt_sndcard) { + if (!getCore()->getCCore()->ringstream && getCore()->getCCore()->sound_conf.play_sndcard && getCore()->getCCore()->sound_conf.capt_sndcard) { /* Give a chance to set card prefered sampling frequency */ if (d->localDesc->streams[0].max_rate > 0) ms_snd_card_set_preferred_sample_rate(getCore()->getCCore()->sound_conf.play_sndcard, d->localDesc->streams[0].max_rate);