summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2016-12-20 15:57:43 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2016-12-21 09:26:58 +0000
commitb7b5c23e6979205a662d857bc1c83270fb4a43ec (patch)
tree1fae334c703b0a7c773d66bb4d942dec6a094d4a /sw
parentfe18f5d51fcbdf1f331440265ba1b8866d03e459 (diff)
tdf#104814 Writer: accepting change tracking changes get stuck
Change-Id: Ie8e0919b53c0b21f480b62eec7c394554757a061 Reviewed-on: https://gerrit.libreoffice.org/32273 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'sw')
-rw-r--r--sw/qa/extras/uiwriter/data/tdf104814.docxbin0 -> 12830 bytes
-rw-r--r--sw/qa/extras/uiwriter/uiwriter.cxx14
-rw-r--r--sw/source/core/doc/DocumentRedlineManager.cxx4
3 files changed, 18 insertions, 0 deletions
diff --git a/sw/qa/extras/uiwriter/data/tdf104814.docx b/sw/qa/extras/uiwriter/data/tdf104814.docx
new file mode 100644
index 000000000000..1f1c524a8914
--- /dev/null
+++ b/sw/qa/extras/uiwriter/data/tdf104814.docx
Binary files differ
diff --git a/sw/qa/extras/uiwriter/uiwriter.cxx b/sw/qa/extras/uiwriter/uiwriter.cxx
index 3cd5e952ffb2..9db3dc1c85b3 100644
--- a/sw/qa/extras/uiwriter/uiwriter.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter.cxx
@@ -219,6 +219,7 @@ public:
void testTdf104032();
void testTdf104440();
void testTdf104425();
+ void testTdf104814();
CPPUNIT_TEST_SUITE(SwUiWriterTest);
CPPUNIT_TEST(testReplaceForward);
@@ -334,6 +335,7 @@ public:
CPPUNIT_TEST(testTdf104032);
CPPUNIT_TEST(testTdf104440);
CPPUNIT_TEST(testTdf104425);
+ CPPUNIT_TEST(testTdf104814);
CPPUNIT_TEST_SUITE_END();
private:
@@ -4145,6 +4147,18 @@ void SwUiWriterTest::testTdf104425()
CPPUNIT_ASSERT_DOUBLES_EQUAL(700.0, fSumHeight_mm, 0.05);
}
+// accepting change tracking gets stuck on change
+void SwUiWriterTest::testTdf104814()
+{
+ SwDoc* const pDoc1(createDoc("tdf104814.docx"));
+
+ SwEditShell* const pEditShell(pDoc1->GetEditShell());
+
+ // accept all redlines
+ while(pEditShell->GetRedlineCount())
+ pEditShell->AcceptRedline(0);
+}
+
CPPUNIT_TEST_SUITE_REGISTRATION(SwUiWriterTest);
CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/sw/source/core/doc/DocumentRedlineManager.cxx b/sw/source/core/doc/DocumentRedlineManager.cxx
index 38a4c77e08bd..6db6b797dc35 100644
--- a/sw/source/core/doc/DocumentRedlineManager.cxx
+++ b/sw/source/core/doc/DocumentRedlineManager.cxx
@@ -274,6 +274,10 @@ namespace
rArr.DeleteAndDestroy( rPos-- );
break;
+ case nsRedlineType_t::REDLINE_PARAGRAPH_FORMAT:
+ rArr.DeleteAndDestroy( rPos-- );
+ break;
+
default:
bRet = false;
}