summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2014-10-07 18:06:26 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2014-10-07 18:14:34 +0200
commite1cbaebe7fe36690e192778c87b5eb63790017d7 (patch)
tree811d3a929eaf49cf776fe67de2a15c8fd125d1cf /writerfilter
parent153af84762f98d6c86c4c060b01402f40b2b0c24 (diff)
kde#52609 RTF import: fix memory leak
This is similar to f7ef84640258e4ee6ddc4cc5cbf58a2d89860afa (abi#2128 RTF import: fix memory leak, 2013-11-28). Change-Id: Id57320466e6fb302ec8616ccc9f4f9429b8eff21
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.cxx16
1 files changed, 16 insertions, 0 deletions
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 1c07fb898878..3caef99f3e9b 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -4892,6 +4892,22 @@ int RTFDocumentImpl::popState()
RTFParserState aState(m_aStates.top());
m_bWasInFrame = aState.aFrame.inFrame();
+ // dmapper expects some content in header/footer, so if there would be nothing, add an empty paragraph.
+ if (m_pTokenizer->getGroup() == 1 && m_bFirstRun)
+ {
+ switch (m_nStreamType)
+ {
+ case NS_ooxml::LN_headerl:
+ case NS_ooxml::LN_headerr:
+ case NS_ooxml::LN_headerf:
+ case NS_ooxml::LN_footerl:
+ case NS_ooxml::LN_footerr:
+ case NS_ooxml::LN_footerf:
+ dispatchSymbol(RTF_PAR);
+ break;
+ }
+ }
+
switch (aState.nDestinationState)
{
case DESTINATION_FONTTABLE: