diff options
author | Joshua Colp <jcolp@digium.com> | 2017-11-09 03:42:34 -0600 |
---|---|---|
committer | Gerrit Code Review <gerrit2@gerrit.digium.api> | 2017-11-09 03:42:34 -0600 |
commit | fe23c480817e96e7aa91a430e851f5fc9531f95c (patch) | |
tree | 307135e2a6a2979612a36737eb50e4418e86b533 /res | |
parent | 65ced1120617c8bac2adbb872187a38d3a3d3f80 (diff) | |
parent | eba1179795f415e48aaafd036df93bd7459f8e0b (diff) |
Merge "res_pjsip_session: Check for errors from ast_stream_topology_set_stream."
Diffstat (limited to 'res')
-rw-r--r-- | res/res_pjsip_session.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/res/res_pjsip_session.c b/res/res_pjsip_session.c index f174f4781..873835c53 100644 --- a/res/res_pjsip_session.c +++ b/res/res_pjsip_session.c @@ -678,7 +678,10 @@ static int handle_incoming_sdp(struct ast_sip_session *session, const pjmedia_sd if (!stream) { return -1; } - ast_stream_topology_set_stream(session->pending_media_state->topology, i, stream); + if (ast_stream_topology_set_stream(session->pending_media_state->topology, i, stream)) { + ast_stream_free(stream); + return -1; + } } session_media = ast_sip_session_media_state_add(session, session->pending_media_state, ast_media_type_from_str(media), i); @@ -1745,7 +1748,10 @@ static int sdp_requires_deferral(struct ast_sip_session *session, const pjmedia_ /* As this is only called on an incoming SDP offer before processing it is not possible * for streams and their media sessions to exist. */ - ast_stream_topology_set_stream(session->pending_media_state->topology, i, stream); + if (ast_stream_topology_set_stream(session->pending_media_state->topology, i, stream)) { + ast_stream_free(stream); + return -1; + } session_media = ast_sip_session_media_state_add(session, session->pending_media_state, ast_media_type_from_str(media), i); if (!session_media) { |