sd/source/filter/eppt/pptx-animations.cxx | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-)
New commits: commit 1b6fd7ccf7dfdc9c344d3c0efab6fa942223f7a4 Author: Noel Grandin <[email protected]> AuthorDate: Tue Nov 18 16:35:48 2025 +0200 Commit: Xisco Fauli <[email protected]> CommitDate: Wed Nov 19 20:55:20 2025 +0100 mso-test: cannot have empty childTnLst element found by converting tdf136301-1.odp to pptx and running officeotron on the output we do not currently support exporting ANIMATIONPHYSICS node types, so don't export a childTnLst element if we see one of those. Change-Id: I159fd4fe677198529782ad0b4890a1c0af3b1658 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194165 Reviewed-by: Michael Stahl <[email protected]> Tested-by: Jenkins CollaboraOffice <[email protected]> (cherry picked from commit d764cc96dc155acb64a991770f24c139516fc0e0) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194201 Reviewed-by: Noel Grandin <[email protected]> Tested-by: Jenkins (cherry picked from commit cbf102d4c1ba73519b49df0d43a87ebdf9267538) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194210 Reviewed-by: Xisco Fauli <[email protected]> diff --git a/sd/source/filter/eppt/pptx-animations.cxx b/sd/source/filter/eppt/pptx-animations.cxx index 7943962f4857..e4824a6d3dd1 100644 --- a/sd/source/filter/eppt/pptx-animations.cxx +++ b/sd/source/filter/eppt/pptx-animations.cxx @@ -951,18 +951,28 @@ void PPTXAnimationExport::WriteAnimationNodeCommonPropsStart() if (!aChildNodes.empty()) { bool bSubTnLst = false; - mpFS->startElementNS(XML_p, XML_childTnLst); + bool bWroteChildTnList = false; for (const NodeContextPtr& pChildContext : aChildNodes) { if (pChildContext->isValid()) { if (pChildContext->isOnSubTnLst()) bSubTnLst = true; + else if (pChildContext->getNode()->getType() == AnimationNodeType::ANIMATEPHYSICS) + ; // ignore we don't support exporting this node type else + { + if (!bWroteChildTnList) + { + bWroteChildTnList = true; + mpFS->startElementNS(XML_p, XML_childTnLst); + } WriteAnimationNode(pChildContext); + } } } - mpFS->endElementNS(XML_p, XML_childTnLst); + if (bWroteChildTnList) + mpFS->endElementNS(XML_p, XML_childTnLst); if (bSubTnLst) {
