]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
fix some recovery issues with dynamic payloads
authorAnthony Minessale <anthm@freeswitch.org>
Thu, 2 Oct 2014 23:33:56 +0000 (18:33 -0500)
committerAnthony Minessale <anthm@freeswitch.org>
Thu, 2 Oct 2014 23:34:00 +0000 (18:34 -0500)
src/switch_core_media.c

index 9163fb1a2b0fc65c35a626e47f92ed887f871b8c..0f38cff75b1319ef396f27fd3083d35fd8ab8166 100644 (file)
@@ -8761,7 +8761,7 @@ SWITCH_DECLARE (void) switch_core_media_recover_session(switch_core_session_t *s
        }
 
        if ((tmp = switch_channel_get_variable(session->channel, "rtp_use_pt"))) {
-               a_engine->cur_payload_map->pt = a_engine->cur_payload_map->agreed_pt = (switch_payload_t)atoi(tmp);
+               a_engine->cur_payload_map->pt = a_engine->cur_payload_map->agreed_pt = smh->payload_space = (switch_payload_t)atoi(tmp);
        }
 
        if ((tmp = switch_channel_get_variable(session->channel, "rtp_audio_recv_pt"))) {
@@ -8769,9 +8769,10 @@ SWITCH_DECLARE (void) switch_core_media_recover_session(switch_core_session_t *s
        }
 
        switch_core_media_set_codec(session, 0, smh->mparams->codec_flags);
-
+       
        a_engine->adv_sdp_ip = smh->mparams->extrtpip = (char *) ip;
        a_engine->adv_sdp_port = a_engine->local_sdp_port = (switch_port_t)atoi(port);
+       a_engine->codec_negotiated = 1;
 
        if (!zstr(ip)) {
                a_engine->local_sdp_ip = switch_core_session_strdup(session, ip);