diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2016-11-08 09:11:33 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-11-11 15:24:42 +0000 |
commit | d6e89673155c9cb536747c734b2de23f3d8484ef (patch) | |
tree | 4a9dc0bd6e218102c1ad773f58c74d4d587d2569 /sw/qa/extras | |
parent | d05b11e5f590272b0036cf09cf8721c37db33791 (diff) |
tdf#79329 DOCX import: fix missing outer table with floattable at cell start
The bug document has a normal table, then its C1 cell starts with a
nested table, which is floating. The problem is that converting the
nested table to a textframe invalidates the start text range of the C1
cell in the outer table we store, so the conversion of the outer table
from text to table fails.
This never worked, so to avoid the regression just don't convert inner
floating tables to textframes when they're anchored at the cell start.
A more general fix in the future can be addressing the actual
invalidation of the cell start/end text ranges, and then this specific
fix will not be necessary anymore.
(cherry picked from commit c1eebcdac9f2b289fd363399130c485ca5ff444c)
Conflicts:
sw/qa/extras/ooxmlexport/ooxmlexport9.cxx
writerfilter/source/dmapper/DomainMapper.cxx
Change-Id: I12cefa41977cf719b07b0fb3ef9ec423c17ef3b1
Reviewed-on: https://gerrit.libreoffice.org/30770
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sw/qa/extras')
-rw-r--r-- | sw/qa/extras/ooxmlexport/data/tdf79329.docx | bin | 0 -> 21212 bytes | |||
-rw-r--r-- | sw/qa/extras/ooxmlexport/ooxmlexport7.cxx | 8 |
2 files changed, 8 insertions, 0 deletions
diff --git a/sw/qa/extras/ooxmlexport/data/tdf79329.docx b/sw/qa/extras/ooxmlexport/data/tdf79329.docx Binary files differnew file mode 100644 index 000000000000..142f29522dc9 --- /dev/null +++ b/sw/qa/extras/ooxmlexport/data/tdf79329.docx diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport7.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport7.cxx index 6babd92ae324..c3b94a7f00b6 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport7.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport7.cxx @@ -59,6 +59,14 @@ DECLARE_OOXMLEXPORT_TEST( testChildNodesOfCubicBezierTo, "FDO74774.docx") "/w:document/w:body/w:p[2]/w:r[1]/mc:AlternateContent[1]/mc:Choice/w:drawing[1]/wp:inline[1]/a:graphic[1]/a:graphicData[1]/wpg:wgp[1]/wps:wsp[3]/wps:spPr[1]/a:custGeom[1]/a:pathLst[1]/a:path[1]/a:cubicBezTo[2]/a:pt[3]"); } +DECLARE_OOXMLEXPORT_TEST(testTdf79329, "tdf79329.docx") +{ + uno::Reference<text::XTextTablesSupplier> xTablesSupplier(mxComponent, uno::UNO_QUERY); + uno::Reference<container::XIndexAccess> xTables(xTablesSupplier->getTextTables(), uno::UNO_QUERY); + // This was 1: only the inner, not the outer table was created. + CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(2), xTables->getCount()); +} + DECLARE_OOXMLEXPORT_TEST(testMSwordHang,"test_msword_hang.docx") { // fdo#74771: |