Bug 159984 - FILESAVE PPTX asks to repair when opened with MSO
Summary: FILESAVE PPTX asks to repair when opened with MSO
Status: RESOLVED DUPLICATE of bug 159931
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
7.6.5.2 release
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: bibisectRequest, regression
Depends on:
Blocks:
 
Reported: 2024-03-01 13:26 UTC by Martin Minchev
Modified: 2024-03-17 14:10 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 Martin Minchev 2024-03-01 13:26:54 UTC
Description:
After saving a file as PPTX with LibreOffice, MSO can't open it before repairing it.

Steps to Reproduce:
1. Open Impress > New > Templates...
2. Select any template
3. Save the file as PPTX ("PowerPoint 2007–365" or "Office Open XML Presentation")
4. Open the PPTX file using MS Office and observe the Repair dialog

Actual Results:
A Repair dialog appears from MS Office.

Expected Results:
The PPTX opens normally.


Reproducible: Always


User Profile Reset: Yes

Additional Info:
This bug is a regression. In LibreOffice 7.6.4.1 and earlier, it worked correctly.
Comment 1 Regina Henschel 2024-03-01 22:47:35 UTC
I see the error in Version: 24.8.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 39048e0c0e9af455197ff57cc2947f8fb23e8542
CPU threads: 32; OS: Windows 10.0 Build 22631; UI render: Skia/Vulkan; VCL: win
Locale: de-DE (de_DE); UI: en-US
Calc: threaded

It is OK in Version: 7.6.4.1 (X86_64) / LibreOffice Community
Build ID: e19e193f88cd6c0525a17fb7a176ed8e6a3e2aa1
CPU threads: 32; OS: Windows 10.0 Build 22631; UI render: Skia/Vulkan; VCL: win
Locale: de-DE (de_DE); UI: en-US
Calc: threaded

I have tested it with template "Blue Curve".

It is likely the same problem as in bug 159931. I see the same error, that ppt\slides\_rels\slide1.xml.rels refers a part "../slideLayouts/slideLayout0.xml" which does not exist.
Comment 2 Regina Henschel 2024-03-02 00:58:23 UTC
The 0 in slideLayout0.xml comes in via 
PowerPointExport::GetLayoutFileId()
because mLayoutInfo[ nOffset ].mnFileIdArray.size() returns 0.

The call of GetLayoutFileId comes from
PowerPointExport::ImplWriteSlide() and therein from preparing the parameter values for addRelation() in line#1380.

That is in file sd/source/filter/eppt/pptx-epptooxml.cxx.
Comment 3 Regina Henschel 2024-03-17 14:10:41 UTC
I set this as duplicate to but 159931. That on is fixed. The fix will be available in version 7.6.7 and 24.2.3. You can already test it in a daily build. You can install a daily build alongside a regular build.
https://dev-builds.libreoffice.org/daily/master/

If you find, that your problem is not fixed in these builds, please set the bug status back to NEW.

*** This bug has been marked as a duplicate of bug 159931 ***