sw/qa/extras/rtfimport/data/tdf50821.rtf | 10 ++++++++++ sw/qa/extras/rtfimport/rtfimport.cxx | 8 ++++++++ writerfilter/source/rtftok/rtfdocumentimpl.cxx | 4 ++-- 3 files changed, 20 insertions(+), 2 deletions(-)
New commits: commit 50e8780b1471c551ad58d7babeb99028868a0c4d Author: Miklos Vajna <[email protected]> Date: Tue Jun 7 09:25:16 2016 +0200 tdf#50821 RTF import: fix handling of \trpaddf{b,l,r,t} The width type is an attribute, not an sprm; this resulted in zero cell margin in the table -> the text overlapped with the border shape. (cherry picked from commit 279f1a204f8c5b5121e9f1f9c431d17bdab1f5bd) Conflicts: writerfilter/source/rtftok/rtfdispatchvalue.cxx Change-Id: I611feb084a16c76faf281d376e1a4a31e162f53d Reviewed-on: https://gerrit.libreoffice.org/26069 Tested-by: Jenkins <[email protected]> Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Caolán McNamara <[email protected]> diff --git a/sw/qa/extras/rtfimport/data/tdf50821.rtf b/sw/qa/extras/rtfimport/data/tdf50821.rtf new file mode 100644 index 0000000..03f253d --- /dev/null +++ b/sw/qa/extras/rtfimport/data/tdf50821.rtf @@ -0,0 +1,10 @@ +{\rtf1 +\pard\plain +before\par +\trowd \trpaddl108\trpaddfl3 \cellx10362\pard\plain\intbl +table +\cell\row +\pard\plain +end +\par +} diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx index 5fa67e9..5242f85 100644 --- a/sw/qa/extras/rtfimport/rtfimport.cxx +++ b/sw/qa/extras/rtfimport/rtfimport.cxx @@ -2595,6 +2595,14 @@ DECLARE_RTFIMPORT_TEST(testTdf77349, "tdf77349.rtf") CPPUNIT_ASSERT_EQUAL(OUString("graphic1"), xImage->getName()); } +DECLARE_RTFIMPORT_TEST(testTdf50821, "tdf50821.rtf") +{ + uno::Reference<text::XTextTable> xTable(getParagraphOrTable(2), uno::UNO_QUERY); + uno::Reference<text::XTextRange> xCell(xTable->getCellByName("A1"), uno::UNO_QUERY); + // This was 0, \trpaddfl was mishandled on import. + CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(191), getProperty<sal_Int32>(xCell, "LeftBorderDistance")); +} + CPPUNIT_PLUGIN_IMPLEMENT(); /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index 60c7ab4..69e4324 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -4835,8 +4835,8 @@ RTFError RTFDocumentImpl::dispatchValue(RTFKeyword nKeyword, int nParam) default: break; } - lcl_putNestedSprm(m_aStates.top().aTableCellSprms, NS_ooxml::LN_CT_TcPrBase_tcMar, nSprm, std::make_shared<RTFValue>(aAttributes)); - lcl_putNestedSprm(m_aDefaultState.aTableCellSprms, NS_ooxml::LN_CT_TcPrBase_tcMar, nSprm, std::make_shared<RTFValue>(aAttributes)); + lcl_putNestedAttribute(m_aStates.top().aTableCellSprms, NS_ooxml::LN_CT_TcPrBase_tcMar, nSprm, std::make_shared<RTFValue>(aAttributes)); + lcl_putNestedAttribute(m_aDefaultState.aTableCellSprms, NS_ooxml::LN_CT_TcPrBase_tcMar, nSprm, std::make_shared<RTFValue>(aAttributes)); } break; case RTF_TRPADDB:
_______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
