diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2017-06-06 11:32:02 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2017-06-06 14:09:02 +0200 |
commit | 1c768b975827c74e58944b8b12ab254891389edc (patch) | |
tree | 9d55aeaa427ad59951533de8e62d84633aee091d /oox/source | |
parent | c6f4fd1942ddecab8485f19fa53faf1eda3a5667 (diff) |
Related: tdf#108269 oox: ignore case when checking .docm extension
Also check for ".docm", not "docm" as a suffix.
Change-Id: Ib9d3474cfe3139ee1ea51210a5606cd52243fee5
Reviewed-on: https://gerrit.libreoffice.org/38430
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
Diffstat (limited to 'oox/source')
-rw-r--r-- | oox/source/core/filterdetect.cxx | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/oox/source/core/filterdetect.cxx b/oox/source/core/filterdetect.cxx index 226668dfc767..ed94ca5a5770 100644 --- a/oox/source/core/filterdetect.cxx +++ b/oox/source/core/filterdetect.cxx @@ -163,10 +163,19 @@ void FilterDetectDocHandler::parseRelationship( const AttributeList& rAttribs ) OUString FilterDetectDocHandler::getFilterNameFromContentType( const OUString& rContentType, const OUString& rFileName ) { - if( rContentType == "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml" && !rFileName.endsWith("docm") ) + bool bDocm = false; + OUString aDocmExtension = ".docm"; + if (rFileName.getLength() >= aDocmExtension.getLength()) + { + OUString aExtension = rFileName.copy(rFileName.getLength() - aDocmExtension.getLength()); + // The file name ends with .docm, ignoring case. + bDocm = aExtension.equalsIgnoreAsciiCase(aDocmExtension); + } + + if( rContentType == "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml" && !bDocm ) return OUString( "writer_MS_Word_2007" ); - if( rContentType == "application/vnd.ms-word.document.macroEnabled.main+xml" || rFileName.endsWith("docm") ) + if( rContentType == "application/vnd.ms-word.document.macroEnabled.main+xml" || bDocm ) return OUString( "writer_MS_Word_2007_VBA" ); if( rContentType == "application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml" || |