mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-02 10:22:46 +00:00
res_pjsip_session.c: Fix crashes seen when call cancelled.
Two testsuite tests crashed in the same place as a result of an INVITE being CANCELed. tests/channels/pjsip/resolver/srv/failover/in_dialog/transport_unspecified tests/channels/pjsip/resolver/srv/failover/in_dialog/transport_tcp The session pointer is no longer in the inv->mod_data[session_module.id] location because the INVITE transaction has reached the terminated state. ASTERISK-25297 #close Reported by: Richard Mudgett Change-Id: Idb75fdca0321f5447d5dac737a632a5f03614427
This commit is contained in:
@@ -2681,8 +2681,10 @@ static void session_inv_on_media_update(pjsip_inv_session *inv, pj_status_t stat
|
||||
struct ast_sip_session *session = inv->mod_data[session_module.id];
|
||||
const pjmedia_sdp_session *local, *remote;
|
||||
|
||||
if (!session->channel) {
|
||||
/* If we don't have a channel. We really don't care about media updates.
|
||||
if (!session || !session->channel) {
|
||||
/*
|
||||
* If we don't have a session or channel then we really
|
||||
* don't care about media updates.
|
||||
* Just ignore
|
||||
*/
|
||||
return;
|
||||
|
Reference in New Issue
Block a user