[Libreoffice-commits] core.git: sw/qa sw/source
Miklos Vajna (via logerrit)
logerrit at kemper.freedesktop.org
Mon Dec 21 15:40:34 UTC 2020
dev/null |binary
sw/qa/extras/ooxmlexport/ooxmlexport15.cxx | 8 --------
sw/source/core/doc/textboxhelper.cxx | 19 +++++++++++++++++--
3 files changed, 17 insertions(+), 10 deletions(-)
New commits:
commit 714b8efc9c4143da31d435f7ccb2bf02704a1b5f
Author: Miklos Vajna <vmiklos at collabora.com>
AuthorDate: Mon Dec 21 16:02:12 2020 +0100
Commit: Miklos Vajna <vmiklos at collabora.com>
CommitDate: Mon Dec 21 16:39:50 2020 +0100
Revert "tdf#138739 sw: fix regression of first paragraph"
This reverts commit 25ca25ee25278536c56a2ac4a63af91100ce4d2e.
cd sw; make -sr CppunitTest_sw_uiwriter3 CPPUNIT_TEST_NAME="testTdf130805"
breaks with this one, it just went in due to an old baseline.
Change-Id: Ie68f2847b936aefba3198ddd915316a204210d4b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108105
Reviewed-by: Miklos Vajna <vmiklos at collabora.com>
Reviewed-by: Xisco Fauli <xiscofauli at libreoffice.org>
Tested-by: Xisco Fauli <xiscofauli at libreoffice.org>
diff --git a/sw/qa/extras/ooxmlexport/data/tdf138739.docx b/sw/qa/extras/ooxmlexport/data/tdf138739.docx
deleted file mode 100755
index 7b5bb302bfa1..000000000000
Binary files a/sw/qa/extras/ooxmlexport/data/tdf138739.docx and /dev/null differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport15.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport15.cxx
index b06f90fe9622..c91488efb93b 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport15.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport15.cxx
@@ -425,14 +425,6 @@ DECLARE_OOXMLEXPORT_TEST(testTdf98000_changePageStyle, "tdf98000_changePageStyle
CPPUNIT_ASSERT_MESSAGE("Different page1/page2 styles", sPageOneStyle != sPageTwoStyle);
}
-DECLARE_OOXMLEXPORT_TEST(testTdf138739, "tdf138739.docx")
-{
- uno::Reference<beans::XPropertySet> xParaProps(getParagraph(1), uno::UNO_QUERY);
-
- CPPUNIT_ASSERT_EQUAL_MESSAGE("Font type name does not match!", OUString("Comic Sans MS"),
- xParaProps->getPropertyValue("CharFontName").get<OUString>());
-}
-
DECLARE_OOXMLEXPORT_TEST(testTdf135216_evenOddFooter, "tdf135216_evenOddFooter.odt")
{
uno::Reference<frame::XModel> xModel(mxComponent, uno::UNO_QUERY);
diff --git a/sw/source/core/doc/textboxhelper.cxx b/sw/source/core/doc/textboxhelper.cxx
index 0e2aa715cbd8..cbf1384bd27c 100644
--- a/sw/source/core/doc/textboxhelper.cxx
+++ b/sw/source/core/doc/textboxhelper.cxx
@@ -83,8 +83,23 @@ void SwTextBoxHelper::create(SwFrameFormat* pShape, bool bCopyText)
pShape->GetDoc()->GetDocShell()->GetBaseModel(), uno::UNO_QUERY);
uno::Reference<text::XTextContentAppend> xTextContentAppend(xTextDocument->getText(),
uno::UNO_QUERY);
- xTextContentAppend->appendTextContent(xTextFrame, uno::Sequence<beans::PropertyValue>());
-
+ try
+ {
+ SdrObject* pSourceSDRShape = pShape->FindRealSdrObject();
+ uno::Reference<text::XTextContent> XSourceShape(pSourceSDRShape->getUnoShape(),
+ uno::UNO_QUERY_THROW);
+ xTextContentAppend->insertTextContentWithProperties(
+ xTextFrame, uno::Sequence<beans::PropertyValue>(), XSourceShape->getAnchor());
+ }
+ catch (uno::Exception&)
+ {
+ // Before the textframe was appended now it is inserted to the begin of the doc in order
+ // to prevent crash when someone removes the para where the textframe anchored:
+ uno::Reference<text::XTextCursor> xCursor = xTextDocument->getText()->createTextCursor();
+ xCursor->gotoStart(false);
+ xTextContentAppend->insertTextContentWithProperties(
+ xTextFrame, uno::Sequence<beans::PropertyValue>(), xCursor->getStart());
+ }
// Link FLY and DRAW formats, so it becomes a text box (needed for syncProperty calls).
uno::Reference<text::XTextFrame> xRealTextFrame(xTextFrame, uno::UNO_QUERY);
auto pTextFrame = dynamic_cast<SwXTextFrame*>(xRealTextFrame.get());
More information about the Libreoffice-commits
mailing list