From: Mike Jerris Date: Mon, 9 Jul 2018 18:53:13 +0000 (-0400) Subject: FS-11223: [core] fix Crash when firefox sends only rtcp and not rtp candidates on... X-Git-Tag: v1.8.1~3^2~28 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=84c97ea3ab3d6116717b8d4a0efd9f8f4b92a343;p=thirdparty%2Ffreeswitch.git FS-11223: [core] fix Crash when firefox sends only rtcp and not rtp candidates on video media --- diff --git a/src/switch_core_media.c b/src/switch_core_media.c index 4591bfc2f5..5f0a9a1dde 100644 --- a/src/switch_core_media.c +++ b/src/switch_core_media.c @@ -9078,7 +9078,9 @@ SWITCH_DECLARE(switch_status_t) switch_core_media_activate_rtp(switch_core_sessi } - if (t_engine->ice_in.cands[t_engine->ice_in.chosen[1]][1].ready) { + if (t_engine->ice_in.cands[t_engine->ice_in.chosen[1]][1].ready && t_engine->ice_in.cands[t_engine->ice_in.chosen[0]][0].ready && + !zstr(t_engine->ice_in.cands[t_engine->ice_in.chosen[1]][1].con_addr) && + !zstr(t_engine->ice_in.cands[t_engine->ice_in.chosen[0]][0].con_addr)) { if (t_engine->rtcp_mux > 0 && !strcmp(t_engine->ice_in.cands[t_engine->ice_in.chosen[1]][1].con_addr, t_engine->ice_in.cands[t_engine->ice_in.chosen[0]][0].con_addr) && t_engine->ice_in.cands[t_engine->ice_in.chosen[1]][1].con_port == t_engine->ice_in.cands[t_engine->ice_in.chosen[0]][0].con_port) { @@ -9404,7 +9406,9 @@ SWITCH_DECLARE(switch_status_t) switch_core_media_activate_rtp(switch_core_sessi } - if (v_engine->ice_in.cands[v_engine->ice_in.chosen[1]][1].ready) { + if (v_engine->ice_in.cands[v_engine->ice_in.chosen[1]][1].ready && v_engine->ice_in.cands[v_engine->ice_in.chosen[0]][0].ready && + !zstr(v_engine->ice_in.cands[v_engine->ice_in.chosen[1]][1].con_addr) && + !zstr(v_engine->ice_in.cands[v_engine->ice_in.chosen[0]][0].con_addr)) { if (v_engine->rtcp_mux > 0 && !strcmp(v_engine->ice_in.cands[v_engine->ice_in.chosen[1]][1].con_addr, v_engine->ice_in.cands[v_engine->ice_in.chosen[0]][0].con_addr) && v_engine->ice_in.cands[v_engine->ice_in.chosen[1]][1].con_port == v_engine->ice_in.cands[v_engine->ice_in.chosen[0]][0].con_port) {