diff options
author | Liong Sauw Ming <ming@teluu.com> | 2016-11-23 01:03:56 +0000 |
---|---|---|
committer | Liong Sauw Ming <ming@teluu.com> | 2016-11-23 01:03:56 +0000 |
commit | 12b89ce7a100ca16ebc5a513f45aa84b196aff0a (patch) | |
tree | 8269abba00d7bb77252866f4539b53235cd2c51b | |
parent | 50feb32cf2bb9fe39137c6f35a772ac050e0b9e7 (diff) |
Fixed #1981: Assertion when session timer is disabled and PJSIP receives 422
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@5488 74dad513-b988-da41-8d7b-12977e46ad98
-rw-r--r-- | pjsip/src/pjsip-ua/sip_timer.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/pjsip/src/pjsip-ua/sip_timer.c b/pjsip/src/pjsip-ua/sip_timer.c index 9417325f..e5a48e84 100644 --- a/pjsip/src/pjsip-ua/sip_timer.c +++ b/pjsip/src/pjsip-ua/sip_timer.c @@ -733,8 +733,15 @@ PJ_DEF(pj_status_t) pjsip_timer_process_resp(pjsip_inv_session *inv, {if(st_code)*st_code=PJSIP_SC_INTERNAL_SERVER_ERROR;return PJ_EINVAL;}); /* Check if Session Timers is supported */ - if ((inv->options & PJSIP_INV_SUPPORT_TIMER) == 0) - return PJ_SUCCESS; + if ((inv->options & PJSIP_INV_SUPPORT_TIMER) == 0) { + if (rdata->msg_info.msg->line.status.code == + PJSIP_SC_SESSION_TIMER_TOO_SMALL) + { + return PJSIP_EINVALIDSTATUS; + } else { + return PJ_SUCCESS; + } + } pj_assert(is_initialized); |