From: Pavel Rochnyack Date: Wed, 4 Oct 2017 16:59:46 +0000 (+0700) Subject: curl_xml: Use of xmlFree() for values returned by xmlNodeGetContent() X-Git-Tag: collectd-5.8.0~59^2 X-Git-Url: https://git.verplant.org/?a=commitdiff_plain;h=7275a8fa59630e593992fa2db27d624d8562f8be;p=collectd.git curl_xml: Use of xmlFree() for values returned by xmlNodeGetContent() --- diff --git a/src/curl_xml.c b/src/curl_xml.c index f5a29b0f..c99e3f1d 100644 --- a/src/curl_xml.c +++ b/src/curl_xml.c @@ -276,6 +276,9 @@ static int cx_if_not_text_node(xmlNodePtr node) /* {{{ */ return -1; } /* }}} cx_if_not_text_node */ +/* + * Returned value should be freed with xmlFree(). + */ static char *cx_get_text_node_value(xmlXPathContextPtr xpath_ctx, /* {{{ */ char *expr, const char *from_option) { xmlXPathObjectPtr values_node_obj = cx_evaluate_xpath(xpath_ctx, expr); @@ -353,7 +356,7 @@ static int cx_handle_single_value_xpath(xmlXPathContextPtr xpath_ctx, /* {{{ */ /* endptr = */ NULL); } - sfree(node_value); + xmlFree(node_value); /* We have reached here which means that * we have got something to work */ @@ -397,7 +400,7 @@ static int cx_handle_instance_xpath(xmlXPathContextPtr xpath_ctx, /* {{{ */ else sstrncpy(vl->type_instance, node_value, sizeof(vl->type_instance)); - sfree(node_value); + xmlFree(node_value); } else if (xpath->instance_prefix != NULL) sstrncpy(vl->type_instance, xpath->instance_prefix, sizeof(vl->type_instance)); @@ -411,7 +414,7 @@ static int cx_handle_instance_xpath(xmlXPathContextPtr xpath_ctx, /* {{{ */ return -1; sstrncpy(vl->plugin_instance, node_value, sizeof(vl->plugin_instance)); - sfree(node_value); + xmlFree(node_value); } return 0;