diff options
author | Benny Prijono <bennylp@teluu.com> | 2008-09-24 10:10:15 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2008-09-24 10:10:15 +0000 |
commit | c2476cfffd0fa7f90ac72295de24ba6dea4ea161 (patch) | |
tree | 0a76d346be96d75d14e4ce627f689f76c1914a07 /pjsip/src/pjsip/sip_ua_layer.c | |
parent | 8fa5079ad7ee39493cd3231de2030335ad56eccc (diff) |
Ticket #635: Disconnect the other call leg when multiple 2xx/OK responses to INVITE are received due to forking
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2315 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/src/pjsip/sip_ua_layer.c')
-rw-r--r-- | pjsip/src/pjsip/sip_ua_layer.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/pjsip/src/pjsip/sip_ua_layer.c b/pjsip/src/pjsip/sip_ua_layer.c index 21ff5f39..a614d16c 100644 --- a/pjsip/src/pjsip/sip_ua_layer.c +++ b/pjsip/src/pjsip/sip_ua_layer.c @@ -832,6 +832,10 @@ retry_on_deadlock: if (mod_ua.param.on_dlg_forked) { dlg = (*mod_ua.param.on_dlg_forked)(dlg_set->dlg_list.next, rdata); + if (dlg == NULL) { + pj_mutex_unlock(mod_ua.mutex); + return PJ_TRUE; + } } else { dlg = dlg_set->dlg_list.next; |