summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-11-11 13:38:34 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-11-11 13:38:34 +0000
commitf6f5a7e5eeec4f14418fec5a7be1bbe57a7ea7e1 (patch)
tree1bfc68cea718fde1f6d4891d2b9efd610b7db1ba
parentbc98e39fe5ed30c03ba3af36f46f74e10f03e635 (diff)
2010-11-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed memory leak * src/ExpatMetalinkProcessor.cc
-rw-r--r--ChangeLog5
-rw-r--r--src/ExpatMetalinkProcessor.cc1
2 files changed, 6 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 39f29af6..b38d78bb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2010-11-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
+ Fixed memory leak
+ * src/ExpatMetalinkProcessor.cc
+
+2010-11-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
+
To match the behavior of friend operator functions in
SharedHandle.h to std::tr1::shared_ptr, we intentionally broke
these functions and modified code so that our code does not depend
diff --git a/src/ExpatMetalinkProcessor.cc b/src/ExpatMetalinkProcessor.cc
index 366256e3..1e98a1f6 100644
--- a/src/ExpatMetalinkProcessor.cc
+++ b/src/ExpatMetalinkProcessor.cc
@@ -214,6 +214,7 @@ MetalinkProcessor::parseFromBinaryStream(const SharedHandle<BinaryStream>& binar
SharedHandle<SessionData> sessionData(new SessionData(stm_));
XML_Parser parser = createParser(sessionData);
+ auto_delete<XML_Parser> deleter(parser, XML_ParserFree);
off_t readOffset = 0;
while(1) {
ssize_t res = binaryStream->readData(buf, bufSize, readOffset);