From 4803be66dcddff1800717dda2dcc386021eb8570 Mon Sep 17 00:00:00 2001 From: Benny Prijono Date: Fri, 9 Sep 2011 09:49:41 +0000 Subject: Fixed #1367: Crash if presence PIDF body is missing element (thanks Matt DiMeo for the patch) git-svn-id: http://svn.pjsip.org/repos/pjproject/branches/1.x@3747 74dad513-b988-da41-8d7b-12977e46ad98 --- pjsip/src/pjsip-simple/pidf.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pjsip/src/pjsip-simple/pidf.c b/pjsip/src/pjsip-simple/pidf.c index 4787d9a8..b90725d4 100644 --- a/pjsip/src/pjsip-simple/pidf.c +++ b/pjsip/src/pjsip-simple/pidf.c @@ -324,15 +324,16 @@ PJ_DEF(void) pjpidf_status_construct(pj_pool_t *pool, pjpidf_status *st) PJ_DEF(pj_bool_t) pjpidf_status_is_basic_open(const pjpidf_status *st) { pj_xml_node *node = pj_xml_find_node((pj_xml_node*)st, &BASIC); - pj_assert(node != NULL); + if (!node) + return PJ_FALSE; return pj_stricmp(&node->content, &OPEN)==0; } PJ_DEF(void) pjpidf_status_set_basic_open(pjpidf_status *st, pj_bool_t open) { pj_xml_node *node = pj_xml_find_node(st, &BASIC); - pj_assert(node != NULL); - node->content = open ? OPEN : CLOSED; + if (node) + node->content = open ? OPEN : CLOSED; } PJ_DEF(pjpidf_pres*) pjpidf_create(pj_pool_t *pool, const pj_str_t *entity) -- cgit v1.2.3