res_pjsip_sdp_rtp: Only do hold/unhold on default audio stream.

When examining a stream to determine hold/unhold information we
only care about the default audio stream. Other streams aren't
used for hold/unhold.

ASTERISK-28784

Change-Id: I7a1f10f07822c4aee1f98a38b9628849b578afe4
This commit is contained in:
Joshua C. Colp 2020-03-19 15:34:02 -03:00 committed by Kevin Harwell
parent 8147f43756
commit 34750d2068
1 changed files with 12 additions and 10 deletions

View File

@ -1488,6 +1488,7 @@ static int negotiate_incoming_sdp_stream(struct ast_sip_session *session,
/* If ICE support is enabled find all the needed attributes */
check_ice_support(session, session_media, stream);
if (ast_sip_session_is_pending_stream_default(session, asterisk_stream) && media_type == AST_MEDIA_TYPE_AUDIO) {
/* Check if incomming SDP is changing the remotely held state */
if (ast_sockaddr_isnull(addrs) ||
ast_sockaddr_is_any(addrs) ||
@ -1501,6 +1502,7 @@ static int negotiate_incoming_sdp_stream(struct ast_sip_session *session,
session_media->remotely_held = 0;
session_media->remotely_held_changed = 1;
}
}
if (apply_cap_to_bundled(session_media, session_media_transport, asterisk_stream,
set_incoming_call_offer_cap(session, session_media, stream))) {