libxml++ r166 - in trunk: . libxml++
- From: murrayc svn gnome org
- To: svn-commits-list gnome org
- Subject: libxml++ r166 - in trunk: . libxml++
- Date: Fri, 7 Mar 2008 12:27:50 +0000 (GMT)
Author: murrayc
Date: Fri Mar 7 12:27:50 2008
New Revision: 166
URL: http://svn.gnome.org/viewvc/libxml++?rev=166&view=rev
Log:
2008-03-07 Deng Xiyue <murrayc murrayc com>
* libxml++/document.cc:
* libxml++/document.h: Add a destructor
(does not break ABI because the base class already has a
virtual destructor) that calls xmlCleanupParser to match the
existing call to xmlInitParser() in the constructor. Fixes
a memory leak.
Bug #501168 (Matt G.)
Modified:
trunk/ChangeLog
trunk/libxml++/document.cc
trunk/libxml++/document.h
Modified: trunk/libxml++/document.cc
==============================================================================
--- trunk/libxml++/document.cc (original)
+++ trunk/libxml++/document.cc Fri Mar 7 12:27:50 2008
@@ -137,11 +137,16 @@
Document::Init::Init()
{
- xmlInitParser(); //Not always necessary, but necessary for thread safety.
- xmlRegisterNodeDefault(on_libxml_construct);
- xmlDeregisterNodeDefault(on_libxml_destruct);
- xmlThrDefRegisterNodeDefault(on_libxml_construct);
- xmlThrDefDeregisterNodeDefault(on_libxml_destruct);
+ xmlInitParser(); //Not always necessary, but necessary for thread safety.
+ xmlRegisterNodeDefault(on_libxml_construct);
+ xmlDeregisterNodeDefault(on_libxml_destruct);
+ xmlThrDefRegisterNodeDefault(on_libxml_construct);
+ xmlThrDefDeregisterNodeDefault(on_libxml_destruct);
+}
+
+Document::Init::~Init()
+{
+ xmlCleanupParser(); //As per xmlInitParser(), or memory leak will happen.
}
Document::Init Document::init_;
Modified: trunk/libxml++/document.h
==============================================================================
--- trunk/libxml++/document.h (original)
+++ trunk/libxml++/document.h Fri Mar 7 12:27:50 2008
@@ -53,6 +53,7 @@
{
public:
Init();
+ virtual ~Init();
};
friend class DomParser;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]