From 3643b505a6f95e65037c5d906e7fb81ac16698cf Mon Sep 17 00:00:00 2001 From: Arseny Kapoulkine Date: Wed, 22 Apr 2015 08:38:52 -0700 Subject: Fix node_pi memory leak --- src/pugixml.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src') diff --git a/src/pugixml.cpp b/src/pugixml.cpp index 80d9d9f..c5e77e8 100644 --- a/src/pugixml.cpp +++ b/src/pugixml.cpp @@ -1163,6 +1163,14 @@ PUGI__NS_BEGIN if (n->header & impl::xml_memory_page_contents_allocated_mask) alloc.deallocate_string(n->contents); + if (PUGI__NODETYPE(n) == node_pi) + { + xml_node_pi_struct* pn = static_cast(n); + + if (pn->pi_header & impl::xml_memory_page_contents_allocated_mask) + alloc.deallocate_string(pn->pi_value); + } + for (xml_attribute_struct* attr = n->first_attribute; attr; ) { xml_attribute_struct* next = attr->next_attribute; -- cgit v1.2.3