diff options
author | Michael Stahl <mstahl@redhat.com> | 2017-02-23 15:33:55 +0100 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2017-02-23 16:42:38 +0100 |
commit | 10e733908038407791f9c14af2a86417cc4a653c (patch) | |
tree | 62c3c794739912b642b5adfbdbed2be00176a4ec /sw | |
parent | 78e25558e86188314b9b72048b8ddca18697cb86 (diff) |
writerfilter: RTF import: hex-escaped \r and \n create paragraph break
... in Word 2010, while the spec doesn't say what they do.
So just handle \'0d and \'0a like \par.
This fixes an assert failure on importing lp556169-2.rtf, where
insertTextPortion was called with a string containing "\r", which split
the paragraph and that messed up the SwPaM.
Change-Id: Iee8b5b47e15d18232de841adfbc9c6498727c384
Diffstat (limited to 'sw')
-rw-r--r-- | sw/qa/extras/rtfimport/data/hexcrlf.rtf | 4 | ||||
-rw-r--r-- | sw/qa/extras/rtfimport/rtfimport.cxx | 10 |
2 files changed, 14 insertions, 0 deletions
diff --git a/sw/qa/extras/rtfimport/data/hexcrlf.rtf b/sw/qa/extras/rtfimport/data/hexcrlf.rtf new file mode 100644 index 000000000000..7c7ed1a9b5f8 --- /dev/null +++ b/sw/qa/extras/rtfimport/data/hexcrlf.rtf @@ -0,0 +1,4 @@ +{\rtf1 +foo\'0dba +r\'0abaz\'0d\'0aquux +\par } diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx index 855b2da3967e..64a6dc90f132 100644 --- a/sw/qa/extras/rtfimport/rtfimport.cxx +++ b/sw/qa/extras/rtfimport/rtfimport.cxx @@ -1101,6 +1101,16 @@ DECLARE_RTFIMPORT_TEST(testFdo59419, "fdo59419.rtf") CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTables->getCount()); } +DECLARE_RTFIMPORT_TEST(testHexCRLF, "hexcrlf.rtf") +{ + // hex-escaped \r and \n should create a paragraph break + getParagraph(1, "foo"); + getParagraph(2, "bar"); + getParagraph(3, "baz"); + getParagraph(4, ""); + getParagraph(5, "quux"); +} + DECLARE_RTFIMPORT_TEST(testFdo58076_2, "fdo58076-2.rtf") { // Position of the picture wasn't correct. |