sd/source/filter/eppt/pptx-animations.cxx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
New commits: commit ec4a63decfe6c6613e3d3b7097359c26fa5b49c7 Author: Karthik <[email protected]> AuthorDate: Fri Oct 10 08:27:38 2025 +0530 Commit: Michael Stahl <[email protected]> CommitDate: Tue Oct 14 16:01:00 2025 +0200 impress interop: PPT->PPTX invalid time value in <p:tmAbs> Saving a PPT file as PPTX could sometimes corrupt the output because of decimal ST_TLTime value. ST_TLTime should be unsigned int ([ISO/IEC 29500-1] 19.7.38). Change-Id: I2bfbec3a4970918e8c58b41c531799796e91668c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192138 Reviewed-by: Michael Stahl <[email protected]> Tested-by: Jenkins CollaboraOffice <[email protected]> diff --git a/sd/source/filter/eppt/pptx-animations.cxx b/sd/source/filter/eppt/pptx-animations.cxx index 8f5389871dc7..9c59cc2feec0 100644 --- a/sd/source/filter/eppt/pptx-animations.cxx +++ b/sd/source/filter/eppt/pptx-animations.cxx @@ -935,9 +935,11 @@ void PPTXAnimationExport::WriteAnimationNodeCommonPropsStart() { const char* sType = convertTextAnimationType(xIterate->getIterateType()); + // ST_TLTime should be unsigned int ([ISO/IEC 29500-1] 19.7.38) + sal_uInt32 nTime = static_cast<sal_uInt32>(xIterate->getIterateInterval() * 1000); + mpFS->startElementNS(XML_p, XML_iterate, XML_type, sType); - mpFS->singleElementNS(XML_p, XML_tmAbs, XML_val, - OString::number(xIterate->getIterateInterval() * 1000)); + mpFS->singleElementNS(XML_p, XML_tmAbs, XML_val, OString::number(nTime)); mpFS->endElementNS(XML_p, XML_iterate); } }
