summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--res/res_pjsip_session.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/res/res_pjsip_session.c b/res/res_pjsip_session.c
index d548d29b8..a00299ebb 100644
--- a/res/res_pjsip_session.c
+++ b/res/res_pjsip_session.c
@@ -895,9 +895,16 @@ static pj_bool_t session_reinvite_on_rx_request(pjsip_rx_data *rdata)
}
if (!(sdp_info = pjsip_rdata_get_sdp_info(rdata)) ||
- (sdp_info->sdp_err != PJ_SUCCESS) ||
- !sdp_info->sdp ||
- !sdp_requires_deferral(session, sdp_info->sdp)) {
+ (sdp_info->sdp_err != PJ_SUCCESS)) {
+ return PJ_FALSE;
+ }
+
+ if (!sdp_info->sdp) {
+ ast_queue_unhold(session->channel);
+ return PJ_FALSE;
+ }
+
+ if (!sdp_requires_deferral(session, sdp_info->sdp)) {
return PJ_FALSE;
}