mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-02 19:16:15 +00:00
res_pjsip_session: Reset pending_media_state->read_callbacks
In handle_negotiated_sdp the pending_media_state->read_callbacks must be reset before they are added in the SDP handlers in handle_negotiated_sdp_session_media. Otherwise, old callbacks for removed streams and file descriptors could be added to the channel and Asterisk would poll on non-existing file descriptors. Resolves: #611
This commit is contained in:
@@ -1115,6 +1115,8 @@ static int handle_negotiated_sdp(struct ast_sip_session *session, const pjmedia_
|
|||||||
SCOPE_EXIT_RTN_VALUE(-1, "Media stream count mismatch\n");
|
SCOPE_EXIT_RTN_VALUE(-1, "Media stream count mismatch\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AST_VECTOR_RESET(&session->pending_media_state->read_callbacks, AST_VECTOR_ELEM_CLEANUP_NOOP);
|
||||||
|
|
||||||
for (i = 0; i < local->media_count; ++i) {
|
for (i = 0; i < local->media_count; ++i) {
|
||||||
struct ast_sip_session_media *session_media;
|
struct ast_sip_session_media *session_media;
|
||||||
struct ast_stream *stream;
|
struct ast_stream *stream;
|
||||||
|
Reference in New Issue
Block a user