diff options
author | Benny Prijono <bennylp@teluu.com> | 2010-06-02 03:03:43 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2010-06-02 03:03:43 +0000 |
commit | 4dc0593088419a73f1551a6d690e1cd5bfe1cc0e (patch) | |
tree | 6c208814badbacccf2af3726e72e167f003c7388 /pjsip/src/pjsua-lib/pjsua_acc.c | |
parent | ccabaf62fd587c48c702db90265c776a893bab05 (diff) |
Fixed #1092 (Crash when receiving various messages with "Contact: *" header format)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3190 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_acc.c')
-rw-r--r-- | pjsip/src/pjsua-lib/pjsua_acc.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_acc.c b/pjsip/src/pjsua-lib/pjsua_acc.c index ba46d368..ad25152f 100644 --- a/pjsip/src/pjsua-lib/pjsua_acc.c +++ b/pjsip/src/pjsua-lib/pjsua_acc.c @@ -2237,9 +2237,12 @@ PJ_DEF(pj_status_t) pjsua_acc_create_uas_contact( pj_pool_t *pool, pjsip_msg_find_hdr(rdata->msg_info.msg, PJSIP_H_CONTACT, pos); if (h_contact) { - uri = (pjsip_uri*) pjsip_uri_get_uri(h_contact->uri); - if (!PJSIP_URI_SCHEME_IS_SIP(uri) && - !PJSIP_URI_SCHEME_IS_SIPS(uri)) + if (h_contact->uri) + uri = (pjsip_uri*) pjsip_uri_get_uri(h_contact->uri); + else + uri = NULL; + if (!uri || (!PJSIP_URI_SCHEME_IS_SIP(uri) && + !PJSIP_URI_SCHEME_IS_SIPS(uri))) { pos = (pjsip_hdr*)h_contact->next; if (pos == &rdata->msg_info.msg->hdr) |