diff options
author | Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> | 2020-04-28 13:05:55 +0200 |
---|---|---|
committer | Michael Stahl <michael.stahl@cib.de> | 2020-04-29 09:53:47 +0200 |
commit | 68f75fe0701fcf9b92c5f1b5fd5eeb9268297494 (patch) | |
tree | b133a8dc8fb5b5b06ececf0be8fe25ae03e22064 | |
parent | fda60625c9e8bbc0259c790e7da76e608a012451 (diff) |
tdf#119087 Don't treat OOXML strict namespace as custom XML
Change-Id: I5037ac09f57c92e02e330cbc906da3afbe4c747c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93056
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
(cherry picked from commit 9be543a27ab18427a1c4e66a70cc49b0332b6aa1)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93128
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
-rw-r--r-- | oox/source/core/xmlfilterbase.cxx | 3 | ||||
-rw-r--r-- | sd/qa/unit/data/pptx/tdf119087.pptx | bin | 0 -> 15035 bytes | |||
-rw-r--r-- | sd/qa/unit/export-tests-ooxml2.cxx | 9 |
3 files changed, 11 insertions, 1 deletions
diff --git a/oox/source/core/xmlfilterbase.cxx b/oox/source/core/xmlfilterbase.cxx index 5808fdc6f234..2cc1daa54b04 100644 --- a/oox/source/core/xmlfilterbase.cxx +++ b/oox/source/core/xmlfilterbase.cxx @@ -992,7 +992,8 @@ void XmlFilterBase::importCustomFragments(css::uno::Reference<css::embed::XStora } // Preserve non-standard (i.e. custom) entries. - if (!sType.match("http://schemas.openxmlformats.org")) + if (!sType.match("http://schemas.openxmlformats.org") // OOXML/ECMA Transitional + && !sType.match("http://purl.oclc.org")) // OOXML Strict { StreamDataSequence aDataSeq; if (importBinaryData(aDataSeq, sTarget)) diff --git a/sd/qa/unit/data/pptx/tdf119087.pptx b/sd/qa/unit/data/pptx/tdf119087.pptx Binary files differnew file mode 100644 index 000000000000..d70bc8b0d4ff --- /dev/null +++ b/sd/qa/unit/data/pptx/tdf119087.pptx diff --git a/sd/qa/unit/export-tests-ooxml2.cxx b/sd/qa/unit/export-tests-ooxml2.cxx index d0ef2dac0eb7..f12ad87e9abc 100644 --- a/sd/qa/unit/export-tests-ooxml2.cxx +++ b/sd/qa/unit/export-tests-ooxml2.cxx @@ -182,6 +182,7 @@ public: void testTdf127372(); void testTdf127379(); void testTdf98603(); + void testTdf119087(); void testTdf131554(); CPPUNIT_TEST_SUITE(SdOOXMLExportTest2); @@ -283,6 +284,7 @@ public: CPPUNIT_TEST(testTdf127372); CPPUNIT_TEST(testTdf127379); CPPUNIT_TEST(testTdf98603); + CPPUNIT_TEST(testTdf119087); CPPUNIT_TEST(testTdf131554); CPPUNIT_TEST_SUITE_END(); @@ -2635,6 +2637,13 @@ void SdOOXMLExportTest2::testTdf98603() CPPUNIT_ASSERT_EQUAL(OUString("IL"), aLocale.Country); } +void SdOOXMLExportTest2::testTdf119087() +{ + ::sd::DrawDocShellRef xDocShRef = loadURL(m_directories.getURLFromSrc("sd/qa/unit/data/pptx/tdf119087.pptx"), PPTX); + xDocShRef = saveAndReload( xDocShRef.get(), PPTX ); + // This would fail both on export validation, and reloading the saved pptx file. +} + void SdOOXMLExportTest2::testTdf131554() { ::sd::DrawDocShellRef xDocShRef = loadURL(m_directories.getURLFromSrc("sd/qa/unit/data/pptx/tdf131554.pptx"), PPTX); |