embeddedobj/source/msole/oleembed.cxx | 9 ++++++--- oox/source/export/shapes.cxx | 3 +-- 2 files changed, 7 insertions(+), 5 deletions(-)
New commits: commit f6b22383258d6ecd93193240b60d6124791d8699 Author: Karthik Godha <[email protected]> AuthorDate: Wed Nov 19 21:37:51 2025 +0530 Commit: Michael Stahl <[email protected]> CommitDate: Thu Dec 4 15:35:35 2025 +0100 tdf#169539: PPT->PPTX Draw OLE object data loss Draw OLE objects are skipped during the export of PPTX. Change-Id: I21c328a3e322de9fc3d4a18030e53894e7fa2514 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194216 Tested-by: Jenkins CollaboraOffice <[email protected]> Reviewed-by: Michael Stahl <[email protected]> diff --git a/embeddedobj/source/msole/oleembed.cxx b/embeddedobj/source/msole/oleembed.cxx index 09eac6e5e1b7..1b6515ab3899 100644 --- a/embeddedobj/source/msole/oleembed.cxx +++ b/embeddedobj/source/msole/oleembed.cxx @@ -264,9 +264,12 @@ bool OleEmbeddedObject::TryToConvertToOOo( const uno::Reference< io::XStream >& xSeekable->seek( 0 ); m_aFilterName = OwnView_Impl::GetFilterNameFromExtentionAndInStream( m_xContext, std::u16string_view(), xStream->getInputStream() ); - if ( !m_aFilterName.isEmpty() - && ( m_aFilterName == "Calc MS Excel 2007 XML" || m_aFilterName == "Impress MS PowerPoint 2007 XML" || m_aFilterName == "MS Word 2007 XML" - || m_aFilterName == "MS Excel 97 Vorlage/Template" || m_aFilterName == "MS Word 97 Vorlage" ) ) + if (!m_aFilterName.isEmpty() + && (m_aFilterName == "Calc MS Excel 2007 XML" + || m_aFilterName == "Impress MS PowerPoint 2007 XML" + || m_aFilterName == "MS Word 2007 XML" + || m_aFilterName == "MS Excel 97 Vorlage/Template" + || m_aFilterName == "MS Word 97 Vorlage" || m_aFilterName == "draw8")) { uno::Reference< container::XNameAccess > xFilterFactory( m_xContext->getServiceManager()->createInstanceWithContext(u"com.sun.star.document.FilterFactory"_ustr, m_xContext), diff --git a/oox/source/export/shapes.cxx b/oox/source/export/shapes.cxx index 0c2ecc26f10c..fcaf711eb35d 100644 --- a/oox/source/export/shapes.cxx +++ b/oox/source/export/shapes.cxx @@ -227,8 +227,7 @@ static uno::Reference<io::XInputStream> lcl_StoreOwnAsOOXML( { {SO3_SW_CLASSID_60}, "MS Word 2007 XML", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", "Word.Document.12", "docx" }, { {SO3_SC_CLASSID_60}, "Calc MS Excel 2007 XML", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Excel.Sheet.12", "xlsx" }, { {SO3_SIMPRESS_CLASSID_60}, "Impress MS PowerPoint 2007 XML", "application/vnd.openxmlformats-officedocument.presentationml.presentation", "PowerPoint.Show.12", "pptx" }, - // FIXME: Draw does not appear to have a MSO format export filter? -// { {SO3_SDRAW_CLASSID}, "", "", "", "" }, + { {SO3_SDRAW_CLASSID}, "draw8", "application/vnd.oasis.opendocument.graphics", "CollaboraOffice.DrawDocument.1", "odg" }, { {SO3_SCH_CLASSID_60}, "unused", "", "", "" }, { {SO3_SM_CLASSID_60}, "unused", "", "", "" }, };
