diff options
author | Tamás Zolnai <tamas.zolnai@collabora.com> | 2016-10-28 15:24:51 +0000 |
---|---|---|
committer | Michael Meeks <michael.meeks@collabora.com> | 2016-10-29 21:09:42 +0100 |
commit | 7c6aaf66a711ebfb9be9469916a3193efc220591 (patch) | |
tree | c3f974688de39a9fcf4fcfae07d20e0345e992dc | |
parent | 76ead0222aac4bc9d8e090c979c2834af121c541 (diff) |
tdf#103544: DOCX exp.: Image loss when have a frame anchored to the same para.
Regression from:
83d51e5e52688c4c9bc0ad70a511458bb06a242d
Partly revert the commit causes this regression.
I checked the related bugs (tdf#78590,tdf#80748)
intended to be fixed by this commit and reverting
this part does not bring back the corruption.
I guess something changed in frames' and text boxes'
import in the meantime, because this MergeMarks::IGNORE
is useless now.
Change-Id: If17776e8628561961c7ce2a2994e3fc609f75639
Reviewed-on: https://gerrit.libreoffice.org/30351
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
Tested-by: Tamás Zolnai <tamas.zolnai@collabora.com>
-rw-r--r-- | include/sax/fshelper.hxx | 2 | ||||
-rw-r--r-- | sax/source/tools/fastserializer.cxx | 6 | ||||
-rw-r--r-- | sw/source/filter/ww8/docxattributeoutput.cxx | 5 |
3 files changed, 3 insertions, 10 deletions
diff --git a/include/sax/fshelper.hxx b/include/sax/fshelper.hxx index e1046b12cbfc..f05429dd1f65 100644 --- a/include/sax/fshelper.hxx +++ b/include/sax/fshelper.hxx @@ -60,7 +60,7 @@ const sal_Int32 FSEND_internal = -1; // same as XML_TOKEN_INVALID namespace sax_fastparser { -enum class MergeMarks { APPEND = 0, PREPEND = 1, POSTPONE = 2, IGNORE = 3 }; +enum class MergeMarks { APPEND = 0, PREPEND = 1, POSTPONE = 2}; typedef css::uno::Reference< css::xml::sax::XFastAttributeList > XFastAttributeListRef; diff --git a/sax/source/tools/fastserializer.cxx b/sax/source/tools/fastserializer.cxx index b81886ef321f..c5f2fca1594e 100644 --- a/sax/source/tools/fastserializer.cxx +++ b/sax/source/tools/fastserializer.cxx @@ -407,7 +407,7 @@ namespace sax_fastparser { // flush, so that we get everything in getData() maCachedOutputStream.flush(); - if (maMarkStack.size() == 1 && eMergeType != MergeMarks::IGNORE) + if (maMarkStack.size() == 1) { #ifdef DBG_UTIL while (!maMarkStack.top()->m_DebugEndedElements.empty()) @@ -471,8 +471,6 @@ namespace sax_fastparser { topDebugEndedElements, topDebugStartedElements); break; - case MergeMarks::IGNORE: - break; } #endif if (maMarkStack.empty()) @@ -490,8 +488,6 @@ namespace sax_fastparser { case MergeMarks::APPEND: maMarkStack.top()->append( aMerge ); break; case MergeMarks::PREPEND: maMarkStack.top()->prepend( aMerge ); break; case MergeMarks::POSTPONE: maMarkStack.top()->postpone( aMerge ); break; - case MergeMarks::IGNORE: break; - } } diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx index cf50f0321815..dd35336162f6 100644 --- a/sw/source/filter/ww8/docxattributeoutput.cxx +++ b/sw/source/filter/ww8/docxattributeoutput.cxx @@ -579,10 +579,7 @@ void DocxAttributeOutput::EndParagraph( ww8::WW8TableNodeInfoInner::Pointer_t pT //sdtcontent is written so Set m_bParagraphHasDrawing to false m_rExport.SdrExporter().setParagraphHasDrawing( false ); m_bRunTextIsOn = false; - if(aFramePrTextbox.empty()) - m_pSerializer->mergeTopMarks(Tag_StartParagraph_1); - else - m_pSerializer->mergeTopMarks(Tag_StartParagraph_1, sax_fastparser::MergeMarks::IGNORE); + m_pSerializer->mergeTopMarks(Tag_StartParagraph_1); // Write framePr if(!aFramePrTextbox.empty()) |