Bug 165036 - ODP/PPT -> PPTX converted files fail opening in PowerPoint
Summary: ODP/PPT -> PPTX converted files fail opening in PowerPoint
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
25.2.0.0 alpha0+
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:25.8.0 target:25.2.1
Keywords: bibisected, bisected, regression
Depends on:
Blocks: PPTX-MasterSlide
  Show dependency treegraph
 
Reported: 2025-02-04 12:16 UTC by Timur
Modified: 2025-02-14 13:30 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Timur 2025-02-04 12:16:27 UTC
ODP/PPT -> PPTX converted files fail opening in PowerPoint

Samples:  attachment 102713 [details] from bug 81300, attachment 138595 [details]  from bug 114650

From https://gerrit.libreoffice.org/c/core/+/180539

sd: de-duplicate slide masters on save to pptx

pptx files have layouts separated from masters, so multiple layouts can
reference the same master. On import that master is duplicated for each
layout. So we want that if it is saved without modification, the created
file contains the same number of masters and layouts as the original
pptx file.

The commit d590f094ccd28ca449eff91692c2178058d5c621 "tdf#155512: sd:
filter: eppt: add "SlideLayout" property to Slide Master" tried to do
this but saved too many layouts, which appeared as extra masters on
reload. The commit bff76421e234df7246a7f49c71a11432f86e09d1 "tdf#157740
FILESAVE PPTX: fix explosion of the number of master slides" fixed the
issue of extra layouts but removed the de-duplication of masters.

This commit avoids saving duplicated masters while keeping the correct
saving of layouts.
Comment 1 Timur 2025-02-04 12:17:53 UTC
Fixed with https://gerrit.libreoffice.org/c/core/+/181070

sd: pptx export every layout used

Regression from commit 9205b4eb09dcb4c91539e092db521154fc4e9523. On
conversion from odp or ppt to pptx, some slide layouts were not saved if
their masters were seen as equivalent.

When reducing duplicated masters, only the layouts used in the Impress
masters were saved for each duplicated masters. But when converting from
other formats that handle masters/layouts differently it's necessary to
search for all used layouts in each Impress slide that uses each
duplicated master.

Change-Id: Ie27852e7c0ff0b160a4e2415669f5e615c46e2f9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181030
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181070
Tested-by: Jenkins
Reviewed-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Comment 2 Timur 2025-02-04 12:26:15 UTC
Other samples: attachment 65691 [details] from 53642, attachment 98291 [details] from 78151,  attachment 144382 [details] from 116052 etc.
That is commit 76c6d180f398a7d482665c24c07ec75f8a1dc7cd, writing for search. 
Thanks Jaume.
Comment 3 Commit Notification 2025-02-04 14:47:21 UTC
Jaume Pujantell committed a patch related to this issue.
It has been pushed to "libreoffice-25-2":

https://git.libreoffice.org/core/commit/638a69d1c533b8276bac056f6b396876dcd21783

tdf#165036: sd: pptx export every layout used

It will be available in 25.2.1.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 4 Aron Budea 2025-02-14 13:30:29 UTC
(In reply to Timur from comment #1)
> Fixed with https://gerrit.libreoffice.org/c/core/+/181070

Commit hash in master branch: 76c6d180f398a7d482665c24c07ec75f8a1dc7cd