Module: kamailio Branch: master Commit: b6b7de8832e4ab22ef2c00ebb2c1e1b6ced9ff35 URL: https://github.com/kamailio/kamailio/commit/b6b7de8832e4ab22ef2c00ebb2c1e1b6ced9ff35
Author: Luis Azedo <[email protected]> Committer: Luis Azedo <[email protected]> Date: 2015-12-17T21:02:43Z presence_dialoginfo : aux_body should return xmldoc instead of char --- Modified: modules/presence/notify.c Modified: modules/presence_dialoginfo/notify_body.c --- Diff: https://github.com/kamailio/kamailio/commit/b6b7de8832e4ab22ef2c00ebb2c1e1b6ced9ff35.diff Patch: https://github.com/kamailio/kamailio/commit/b6b7de8832e4ab22ef2c00ebb2c1e1b6ced9ff35.patch --- diff --git a/modules/presence/notify.c b/modules/presence/notify.c index efb8a48..f6a0ba9 100644 --- a/modules/presence/notify.c +++ b/modules/presence/notify.c @@ -1535,8 +1535,7 @@ int send_notify_request(subs_t* subs, subs_t * watcher_subs, { aux_body = subs->event->aux_body_processing(subs, notify_body); if(aux_body) { - xmlFree(notify_body->s); - pkg_free(notify_body); + free_notify_body(notify_body, subs->event); notify_body = aux_body; } } diff --git a/modules/presence_dialoginfo/notify_body.c b/modules/presence_dialoginfo/notify_body.c index e6dc050..710fe91 100644 --- a/modules/presence_dialoginfo/notify_body.c +++ b/modules/presence_dialoginfo/notify_body.c @@ -595,5 +595,18 @@ str *dlginfo_body_setversion(subs_t *subs, str *body) { memcpy(version_start, version, version_len); memset(version_start + version_len, ' ', 12 - version_len); + xmlDocPtr doc = xmlReadMemory(aux_body->s, aux_body->len, "noname.xml", NULL, 0); + if (doc == NULL) { + LM_ERR("error allocation xmldoc\n"); + pkg_free(aux_body->s); + pkg_free(aux_body); + return NULL; + } + pkg_free(aux_body->s); + xmlDocDumpFormatMemory(doc,(xmlChar**)(void*)&aux_body->s, &aux_body->len, 1); + + xmlCleanupParser(); + xmlMemoryDump(); + return aux_body; } _______________________________________________ sr-dev mailing list [email protected] http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
