filter/source/config/fragments/types/calc_OOXML.xcu | 2 +- filter/source/config/fragments/types/calc_OOXML_Template.xcu | 2 +- filter/source/config/fragments/types/impress_OOXML_Presentation.xcu | 2 +- filter/source/config/fragments/types/impress_OOXML_Presentation_Template.xcu | 2 +- filter/source/config/fragments/types/writer_OOXML.xcu | 2 +- filter/source/config/fragments/types/writer_OOXML_Template.xcu | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-)
New commits: commit d2b873bf8f695036edae0c3520ca5a6124cb1b6a Author: Justin Luth <[email protected]> AuthorDate: Mon Dec 1 17:49:42 2025 -0500 Commit: Justin Luth <[email protected]> CommitDate: Fri Dec 5 22:28:10 2025 +0100 tdf#165180 docm/xlsm/pptm: no macros in Office Open XML filters It isn't that Microsoft's 2010+ formats don't support macros. Rather, PPTX commit 5d0901a75e7ef96dc722b5277450cc18ad163f7b and DOCX commit 697173f6fdfae581022cfdb5ec5171c5a3be58f0 (for the 2007 ECMA 1st edition filters) split the filter into two parts in order to support macro export. The same would definitely have to be done in order for the 2010 Office Open filters to support macros. So it is just that WE don't support macro export yet. If done incorrectly, MS Office will refuse to open the file, so it is best to ensure the filter can never EXPORT incorrectly. AFAICS, the import filter is meaningless (has no impact), so only EXPORT could possibly be affected by this patch. Linux's UI already refuses to let us save a .docm file using any filter other than Word 2007 VBA. Even setting 2007 VBA oor:name="Preferred"><value>false</value> didn't prevent the file-picker from auto-switching to that filter. The only way I could enable it was to put docm first in oor:name="Extensions"><value>docm docx</value>. MS Word refused to open the resulting file. (Yet another reason for a separate 2010-365 VBA filter - simply to enable the file-picker to override the 2007 VBA filter since only the first Extension has effect in the file-picker's auto-filter-by-extension selection.) Using SAL_USE_VCLPLUGIN=gen, I could easily force LO to save a .docm using the Word 2010-365 filter, and MS Word refused to open the resulting file. oox/source/core/filterdetect.cxx import logic unconditionally says macro-enabled formats are 2007 filters anyway. Change-Id: Iea89936f24c712b0ac17b2e56c9acacd019cad5a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/195015 Tested-by: Jenkins Reviewed-by: Justin Luth <[email protected]> diff --git a/filter/source/config/fragments/types/calc_OOXML.xcu b/filter/source/config/fragments/types/calc_OOXML.xcu index 8868951571e9..8e2b073ccc3a 100644 --- a/filter/source/config/fragments/types/calc_OOXML.xcu +++ b/filter/source/config/fragments/types/calc_OOXML.xcu @@ -18,7 +18,7 @@ <node oor:name="Office Open XML Spreadsheet" oor:op="replace" > <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> <prop oor:name="URLPattern"/> - <prop oor:name="Extensions"><value>xlsx xlsm</value></prop> + <prop oor:name="Extensions"><value>xlsx</value></prop> <prop oor:name="MediaType"><value>application/vnd.openxmlformats-officedocument.spreadsheetml.sheet</value></prop> <prop oor:name="Preferred"><value>true</value></prop> <prop oor:name="PreferredFilter"><value>Calc Office Open XML</value></prop> diff --git a/filter/source/config/fragments/types/calc_OOXML_Template.xcu b/filter/source/config/fragments/types/calc_OOXML_Template.xcu index e7865779781a..1d002d08f143 100644 --- a/filter/source/config/fragments/types/calc_OOXML_Template.xcu +++ b/filter/source/config/fragments/types/calc_OOXML_Template.xcu @@ -18,7 +18,7 @@ <node oor:name="Office Open XML Spreadsheet Template" oor:op="replace" > <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> <prop oor:name="URLPattern"/> - <prop oor:name="Extensions"><value>xltx xltm</value></prop> + <prop oor:name="Extensions"><value>xltx</value></prop> <prop oor:name="MediaType"><value>application/vnd.openxmlformats-officedocument.spreadsheetml.template</value></prop> <prop oor:name="Preferred"><value>true</value></prop> <prop oor:name="PreferredFilter"><value>Calc Office Open XML Template</value></prop> diff --git a/filter/source/config/fragments/types/impress_OOXML_Presentation.xcu b/filter/source/config/fragments/types/impress_OOXML_Presentation.xcu index 6264ce716787..5f33ec77c72a 100644 --- a/filter/source/config/fragments/types/impress_OOXML_Presentation.xcu +++ b/filter/source/config/fragments/types/impress_OOXML_Presentation.xcu @@ -18,7 +18,7 @@ <node oor:name="Office Open XML Presentation" oor:op="replace"> <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> <prop oor:name="URLPattern"/> - <prop oor:name="Extensions"><value>pptx pptm</value></prop> + <prop oor:name="Extensions"><value>pptx</value></prop> <prop oor:name="MediaType"><value>application/vnd.openxmlformats-officedocument.presentationml.presentation</value></prop> <prop oor:name="Preferred"><value>true</value></prop> <prop oor:name="PreferredFilter"><value>Impress Office Open XML</value></prop> diff --git a/filter/source/config/fragments/types/impress_OOXML_Presentation_Template.xcu b/filter/source/config/fragments/types/impress_OOXML_Presentation_Template.xcu index c34d39541b8c..3b0dbaecd837 100644 --- a/filter/source/config/fragments/types/impress_OOXML_Presentation_Template.xcu +++ b/filter/source/config/fragments/types/impress_OOXML_Presentation_Template.xcu @@ -18,7 +18,7 @@ <node oor:name="Office Open XML Presentation Template" oor:op="replace"> <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> <prop oor:name="URLPattern"/> - <prop oor:name="Extensions"><value>potx potm</value></prop> + <prop oor:name="Extensions"><value>potx</value></prop> <prop oor:name="MediaType"><value>application/vnd.openxmlformats-officedocument.presentationml.template</value></prop> <prop oor:name="Preferred"><value>true</value></prop> <prop oor:name="PreferredFilter"><value>Impress Office Open XML Template</value></prop> diff --git a/filter/source/config/fragments/types/writer_OOXML.xcu b/filter/source/config/fragments/types/writer_OOXML.xcu index 079a6421f072..0f4602179321 100644 --- a/filter/source/config/fragments/types/writer_OOXML.xcu +++ b/filter/source/config/fragments/types/writer_OOXML.xcu @@ -18,7 +18,7 @@ <node oor:name="writer_OOXML" oor:op="replace" > <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> <prop oor:name="URLPattern"/> - <prop oor:name="Extensions"><value>docx docm</value></prop> + <prop oor:name="Extensions"><value>docx</value></prop> <prop oor:name="MediaType"><value>application/vnd.openxmlformats-officedocument.wordprocessingml.document</value></prop> <prop oor:name="Preferred"><value>true</value></prop> <prop oor:name="PreferredFilter"><value>Office Open XML Text</value></prop> diff --git a/filter/source/config/fragments/types/writer_OOXML_Template.xcu b/filter/source/config/fragments/types/writer_OOXML_Template.xcu index a9d424b967b4..f7a90397ef11 100644 --- a/filter/source/config/fragments/types/writer_OOXML_Template.xcu +++ b/filter/source/config/fragments/types/writer_OOXML_Template.xcu @@ -18,7 +18,7 @@ <node oor:name="writer_OOXML_Text_Template" oor:op="replace" > <prop oor:name="DetectService"><value>com.sun.star.comp.oox.FormatDetector</value></prop> <prop oor:name="URLPattern"/> - <prop oor:name="Extensions"><value>dotx dotm</value></prop> + <prop oor:name="Extensions"><value>dotx</value></prop> <prop oor:name="MediaType"><value>application/vnd.openxmlformats-officedocument.wordprocessingml.template</value></prop> <prop oor:name="Preferred"><value>true</value></prop> <prop oor:name="PreferredFilter"><value>Office Open XML Text Template</value></prop>
