From 137b4aa0d7b65aaafd34fe19e71460651165b253 Mon Sep 17 00:00:00 2001 From: yuusuke Date: Thu, 27 Feb 2014 20:18:08 +0900 Subject: [PATCH] Fix: memory leak found by valgrind was corrected. --- cib/messages.c | 2 ++ lib/common/xml.c | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/cib/messages.c b/cib/messages.c index 4d53da5f62b..11964087174 100644 --- a/cib/messages.c +++ b/cib/messages.c @@ -223,6 +223,8 @@ cib_process_ping(const char *op, int options, const char *section, xmlNode * req crm_info("Reporting our current digest to %s: %s (%d)", host, digest, cs && cs->targets); + free(digest); + return pcmk_ok; #endif } diff --git a/lib/common/xml.c b/lib/common/xml.c index 402c87f5544..5b53f851f86 100644 --- a/lib/common/xml.c +++ b/lib/common/xml.c @@ -800,9 +800,10 @@ xml_create_patchset(int format, xmlNode *source, xmlNode *target, bool *config_c } if(patch && with_digest) { - const char *digest = calculate_xml_versioned_digest(target, FALSE, TRUE, version); + char *digest = calculate_xml_versioned_digest(target, FALSE, TRUE, version); crm_xml_add(patch, XML_ATTR_DIGEST, digest); + free(digest); } return patch; } @@ -1355,7 +1356,9 @@ __xml_find_path(xmlNode *top, const char *key) free(remainder); free(current); + free(section); free(tag); + free(id); return target; } @@ -1559,6 +1562,7 @@ xml_apply_patchset(xmlNode *xml, xmlNode *patchset, bool check_version) crm_trace("Digest matched: expected %s, calculated %s", digest, new_digest); } free(new_digest); + free(version); } free_xml(old); return rc;