diff options
-rw-r--r-- | sd/qa/unit/data/odp/tdf99224.odp | bin | 0 -> 11212 bytes | |||
-rw-r--r-- | sd/qa/unit/export-tests.cxx | 12 | ||||
-rw-r--r-- | sd/source/filter/eppt/pptx-epptooxml.cxx | 4 |
3 files changed, 15 insertions, 1 deletions
diff --git a/sd/qa/unit/data/odp/tdf99224.odp b/sd/qa/unit/data/odp/tdf99224.odp Binary files differnew file mode 100644 index 000000000000..e52a000dec54 --- /dev/null +++ b/sd/qa/unit/data/odp/tdf99224.odp diff --git a/sd/qa/unit/export-tests.cxx b/sd/qa/unit/export-tests.cxx index 59e49d2d21f1..624d2908abd7 100644 --- a/sd/qa/unit/export-tests.cxx +++ b/sd/qa/unit/export-tests.cxx @@ -154,6 +154,7 @@ public: void testMathObjectPPT2010(); void testTdf80224(); void testTdf92527(); + void testTdf99224(); CPPUNIT_TEST_SUITE(SdExportTest); CPPUNIT_TEST(testFdo90607); @@ -207,6 +208,7 @@ public: CPPUNIT_TEST(testSlideNameField); CPPUNIT_TEST(testExtFileField); CPPUNIT_TEST(testAuthorField); + CPPUNIT_TEST(testTdf99224); CPPUNIT_TEST_SUITE_END(); @@ -1690,6 +1692,16 @@ void SdExportTest::testAuthorField() xDocShRef->DoClose(); } +void SdExportTest::testTdf99224() +{ + sd::DrawDocShellRef xShell = loadURL(m_directories.getURLFromSrc("/sd/qa/unit/data/odp/tdf99224.odp"), ODP); + xShell = saveAndReload(xShell, PPTX); + uno::Reference<drawing::XDrawPage> xPage = getPage(0, xShell); + // This was 0: the image with text was lost on export. + CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(1), xPage->getCount()); + xShell->DoClose(); +} + CPPUNIT_TEST_SUITE_REGISTRATION(SdExportTest); CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/sd/source/filter/eppt/pptx-epptooxml.cxx b/sd/source/filter/eppt/pptx-epptooxml.cxx index e968e330774f..fdd1d4e9eb65 100644 --- a/sd/source/filter/eppt/pptx-epptooxml.cxx +++ b/sd/source/filter/eppt/pptx-epptooxml.cxx @@ -245,7 +245,7 @@ ShapeExport& PowerPointShapeExport::WriteTextShape( const Reference< XShape >& x DBG(printf( "shape(text): %s\n", USS(sShapeType) )); - if ( sShapeType == "com.sun.star.drawing.TextShape" ) + if ( sShapeType == "com.sun.star.drawing.TextShape" || sShapeType == "com.sun.star.drawing.GraphicObjectShape" ) { ShapeExport::WriteTextShape( xShape ); } @@ -286,6 +286,8 @@ ShapeExport& PowerPointShapeExport::WriteTextShape( const Reference< XShape >& x if( !WritePlaceholder( xShape, Title, mbMaster ) ) ShapeExport::WriteTextShape( xShape ); } + else + SAL_WARN("sd.filter", "PowerPointShapeExport::WriteTextShape: shape of type '" << sShapeType << "' is ignored"); return *this; } |