@@ -50,7 +50,10 @@ static void xml_init_node(pj_pool_t *pool, pj_xml_node *node,
5050{
5151 pj_list_init (& node -> attr_head );
5252 pj_list_init (& node -> node_head );
53- node -> name = * name ;
53+
54+ if (name ) node -> name = * name ;
55+ else node -> name .ptr = NULL , node -> name .slen = 0 ;
56+
5457 if (value ) pj_strdup (pool , & node -> content , value );
5558 else node -> content .ptr = NULL , node -> content .slen = 0 ;
5659}
@@ -68,12 +71,12 @@ static pj_xml_attr* xml_create_attr(pj_pool_t *pool, pj_str_t *name,
6871PJ_DEF (void ) pjsip_dlg_info_remote_construct (pj_pool_t * pool ,
6972 pjsip_dlg_info_remote * remote )
7073{
71- pj_xml_node * node ;
74+ // pj_xml_node *node;
7275
7376 xml_init_node (pool , remote , & REMOTE , NULL );
74- node = PJ_POOL_ALLOC_T (pool , pj_xml_node );
75- xml_init_node (pool , node , NULL , NULL );
76- pj_xml_add_node (remote , node );
77+ // node = PJ_POOL_ALLOC_T(pool, pj_xml_node);
78+ // xml_init_node(pool, node, NULL, NULL);
79+ // pj_xml_add_node(remote, node);
7780}
7881
7982PJ_DEF (const pj_str_t * )
@@ -176,12 +179,12 @@ pjsip_dlg_info_remote_set_target_uri(pj_pool_t *pool,
176179PJ_DEF (void ) pjsip_dlg_info_local_construct (pj_pool_t * pool ,
177180 pjsip_dlg_info_local * local )
178181{
179- pj_xml_node * node ;
182+ // pj_xml_node *node;
180183
181184 xml_init_node (pool , local , & LOCAL , NULL );
182- node = PJ_POOL_ALLOC_T (pool , pj_xml_node );
183- xml_init_node (pool , node , NULL , NULL );
184- pj_xml_add_node (local , node );
185+ // node = PJ_POOL_ALLOC_T(pool, pj_xml_node);
186+ // xml_init_node(pool, node, &EMPTY_STRING, &EMPTY_STRING );
187+ // pj_xml_add_node(local, node);
185188}
186189
187190PJ_DEF (const pj_str_t * )
@@ -290,8 +293,12 @@ pjsip_dlg_info_dialog_construct(pj_pool_t *pool,
290293 pjsip_dlg_info_remote * remote ;
291294
292295 xml_init_node (pool , dialog , & DIALOG , NULL );
293- attr = xml_create_attr (pool , & ID , id );
294- pj_xml_add_attr (dialog , attr );
296+
297+ if (id ) {
298+ attr = xml_create_attr (pool , & ID , id );
299+ pj_xml_add_attr (dialog , attr );
300+ }
301+
295302 local = PJ_POOL_ALLOC_T (pool , pjsip_dlg_info_local );
296303 pjsip_dlg_info_local_construct (pool , local );
297304 pj_xml_add_node (dialog , local );
@@ -521,15 +528,18 @@ pjsip_dlg_info_dialog_info_construct(pj_pool_t *pool,
521528 attr = xml_create_attr (pool , & VERSION , version );
522529 pj_xml_add_attr (dialog_info , attr );
523530
524- attr = xml_create_attr (pool , & STATE , state );
525- pj_xml_add_attr (dialog_info , attr );
526-
527531 attr = xml_create_attr (pool , & ENTITY , entity );
528532 pj_xml_add_attr (dialog_info , attr );
529533
530534 dialog = PJ_POOL_ALLOC_T (pool , pjsip_dlg_info_dialog );
531- pjsip_dlg_info_local_construct (pool , dialog );
535+ pjsip_dlg_info_dialog_construct (pool , dialog , NULL );
532536 pj_xml_add_node (dialog_info , dialog );
537+
538+ pj_xml_node * node ;
539+ node = PJ_POOL_ALLOC_T (pool , pj_xml_node );
540+ xml_init_node (pool , node , & STATE , state );
541+ pj_xml_add_node (dialog , node );
542+
533543}
534544
535545PJ_DEF (const pj_str_t * )
0 commit comments