[Libreoffice-commits] core.git: sax/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Mon Aug 13 14:57:05 UTC 2018
sax/source/fastparser/fastparser.cxx | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
New commits:
commit 4130f3bcaf6cc8778fcb921caa5357d9c945e353
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Mon Aug 13 14:06:41 2018 +0100
Commit: Caolán McNamara <caolanm at redhat.com>
CommitDate: Mon Aug 13 16:56:45 2018 +0200
ofz#9591 Indirect-leak
==18428== 12,809 (176 direct, 12,633 indirect) bytes in 1 blocks are definitely lost in loss record 2,664 of 2,683
==18428== at 0x4C2EBAB: malloc (vg_replace_malloc.c:299)
==18428== by 0x8D1CBC8: xmlNewDoc (tree.c:1171)
==18428== by 0x8D0C43D: xmlParseEntityDecl (parser.c:5521)
==18428== by 0x8D0F017: xmlParseMarkupDecl (parser.c:6802)
==18428== by 0x8D11588: xmlParseInternalSubset (parser.c:8305)
==18428== by 0x8D1733A: xmlParseTryOrFinish (parser.c:11977)
==18428== by 0x8D17DDA: xmlParseChunk (parser.c:12263)
==18428== by 0x3060C380: sax_fastparser::FastSaxParserImpl::parse() (fastparser.cxx:1041)
==18428== by 0x3060B6DC: sax_fastparser::FastSaxParserImpl::parseStream(com::sun::star::xml::sax::InputSource const&) (fastparser.cxx:850)
==18428== by 0x3060E675: sax_fastparser::FastSaxParser::parseStream(com::sun::star::xml::sax::InputSource const&) (fastparser.cxx:1357)
==18428== by 0x2F4B2ABE: SvXMLImport::parseStream(com::sun::star::xml::sax::InputSource const&) (xmlimp.cxx:485)
==18428== by 0x34E2C12C: filter::odfflatxml::OdfFlatXml::importer(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&, com::sun::star::uno::Sequence<rtl::OUString> const&) (OdfFlatXml.cxx:150)
Change-Id: I63885b837e7311330255457da3a368bd3f4f8921
Reviewed-on: https://gerrit.libreoffice.org/58933
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sax/source/fastparser/fastparser.cxx b/sax/source/fastparser/fastparser.cxx
index 3486dcd53759..a2b1e38b79fb 100644
--- a/sax/source/fastparser/fastparser.cxx
+++ b/sax/source/fastparser/fastparser.cxx
@@ -752,8 +752,12 @@ namespace
}
~ParserCleanup()
{
- //xmlFreeParserCtxt accepts a null arg
- xmlFreeParserCtxt(m_rEntity.mpParser);
+ if (m_rEntity.mpParser)
+ {
+ if (m_rEntity.mpParser->myDoc)
+ xmlFreeDoc(m_rEntity.mpParser->myDoc);
+ xmlFreeParserCtxt(m_rEntity.mpParser);
+ }
m_rParser.popEntity();
}
};
More information about the Libreoffice-commits
mailing list