summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2017-02-23 15:33:55 +0100
committerMichael Stahl <mstahl@redhat.com>2017-02-23 16:42:38 +0100
commit10e733908038407791f9c14af2a86417cc4a653c (patch)
tree62c3c794739912b642b5adfbdbed2be00176a4ec /sw
parent78e25558e86188314b9b72048b8ddca18697cb86 (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.rtf4
-rw-r--r--sw/qa/extras/rtfimport/rtfimport.cxx10
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.