Bug 160801

Summary: Writer crash when use clear formatting after insert page break (macOS only)
Product: LibreOffice Reporter: vika <viktorija.florjancic>
Component: WriterAssignee: Patrick Luby (volunteer) <guibomacdev>
Status: ASSIGNED ---    
Severity: critical CC: guibomacdev, stephane.guillou, telesto
Priority: medium Keywords: wantBacktrace
Version: 24.2.2.2 release   
Hardware: All   
OS: macOS (All)   
Whiteboard:
Crash report or crash signature: Regression By:
Bug Depends on:    
Bug Blocks: 133092    
Attachments: example of a file (text is in Slovene)
Example file
Crash log after performing steps in comment #8 of this bug

Description vika 2024-04-24 07:37:33 UTC
Description:
I have a Table of Content and headings with outline numbers. Heading are formatted with page break before. I insert a page staying with a cursor after a heading number. It is normally that in a new page paragraph style is Heading 1. I try to clear formatting what cause the program crash.
I found that if I use Default paragraph style Writer does not crash. The same if do not use heading numbers.

Steps to Reproduce:
1.insert page break before a numbered Heading 1
2.clear formatting in a new page (I do not like that style Heading 1 is used)


Actual Results:
Writer crashed. If I use Default paragraph style instead of Clear formatting, it does not crash. It also not crash if the headings are not numbered. 

Expected Results:
Clear formatting should work.


Reproducible: Always


User Profile Reset: No

Additional Info:
The style of heading formatting (numbers, outline numbers, dots..) does not matter.
Comment 1 vika 2024-04-24 07:40:18 UTC
Created attachment 193831 [details]
example of a file (text is in Slovene)

Translation: Naslov = Heading, Kazalo vsebine = Table of Content; text is dummy text.
Comment 2 Dieter 2024-05-09 10:22:41 UTC
(In reply to vika from comment #0)
> Steps to Reproduce:
> 1.insert page break before a numbered Heading 1
> 2.clear formatting in a new page (I do not like that style Heading 1 is used)

I don't get a crash with

Version: 24.2.3.2 (X86_64) / LibreOffice Community
Build ID: 433d9c2ded56988e8a90e6b2e771ee4e6a5ab2ba
CPU threads: 4; OS: Windows 10.0 Build 19045; UI render: Skia/Raster; VCL: win
Locale: de-DE (de_DE); UI: en-GB
Calc: CL threaded

So perhaps only a Mac issue. But please your steps of "clear formatting"
=> NEEDINFO
Comment 3 vika 2024-05-09 11:23:22 UTC
It is true. I have tested on Win machine, it is only a Mac issue :-(

Steps:
1. Insert page break before Heading 1
2. Clear formatting on the new page.
On Mac crash, on WIN does not.
Comment 4 QA Administrators 2024-05-10 03:17:20 UTC Comment hidden (obsolete)
Comment 5 Stéphane Guillou (stragu) 2024-05-22 04:30:32 UTC
(In reply to vika from comment #3)
> Steps:
> 1. Insert page break before Heading 1
> 2. Clear formatting on the new page.
> On Mac crash, on WIN does not.
Can you please clarify the steps? What exactly do you use for "clear formatting"? Is it Format > Clear Direct Formatting?
And what do you mean by "new page"? The blank page before Heading 1?
Comment 6 vika 2024-05-22 05:33:29 UTC
Clear formatting is proceeded from the Formatting toolbar.

Insert page is proceeded from menu Insert | Page break.

Writer crashes only on Mac when "Numeric with sublevels" is used for Heading numbering.
I've recorded a short video: https://filesender.arnes.si/?s=download&token=d79d52b1-aa93-4672-a102-a51a37e55bae
Comment 7 QA Administrators 2024-05-23 03:17:34 UTC Comment hidden (obsolete)
Comment 8 Telesto 2024-05-23 07:49:16 UTC
Created attachment 194289 [details]
Example file

1. Open the attached file
2. Toolbar > Paragraph style drop down box -> clear all formatting -> crash

Confirm with a 8 weeks old build
Version: 24.8.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: aef28c23adc87b8e26eacb56c7dbcf652e907fb9
CPU threads: 8; OS: macOS 14.3; UI render: Skia/Raster; VCL: osx
Locale: nl-NL (nl_NL.UTF-8); UI: en-US
Calc: threaded
Comment 9 Patrick Luby (volunteer) 2024-05-30 23:06:14 UTC
Created attachment 194465 [details]
Crash log after performing steps in comment #8 of this bug
Comment 10 Patrick Luby (volunteer) 2024-05-30 23:10:05 UTC
(In reply to Patrick Luby (volunteer) from comment #9)
> Created attachment 194465 [details]
> Crash log after performing steps in comment #8 of this bug

I can reproduce the crash in my local build (see attachment #194465 [details] for crash log) using Tolesto's steps in comment #8.

I will take a look at the code and see if I can fix the crash. I will post again when I have any news.
Comment 11 Patrick Luby (volunteer) 2024-05-31 20:32:28 UTC
I have submitted the following patch that fixes the bug for me:

https://gerrit.libreoffice.org/c/core/+/168304

What I found is that the current object that we are executing code in is deleted out from underneath us so I moved the call after all the calls that still need the current object to be alive.

I'll post again when this change is available in the LibreOffice nightly master builds.