Bug 129837 - Crash/Assert when modifying a numbering style (gtk3 only)
Summary: Crash/Assert when modifying a numbering style (gtk3 only)
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
7.0.0.0.alpha0+
Hardware: All All
: high major
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: bibisected, bisected, haveBacktrace, regression
: 129864 (view as bug list)
Depends on:
Blocks:
 
Reported: 2020-01-06 17:03 UTC by Heiko Tietze
Modified: 2020-01-09 10:47 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
bt with debug symbols (gtk3) (13.47 KB, text/plain)
2020-01-06 20:16 UTC, Julien Nabet
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Heiko Tietze 2020-01-06 17:03:03 UTC
1. Start the paragraph style dialog for some existing style, like Addressee
2. On the tab Outline & Numbering select something else but None and click Edit Style

=> vcl/unx/gtk3/gtk3gtkinst.cxx:12862: {anonymous}::GtkInstanceBuilder::GtkInstanceBuilder(GtkWidget*, const rtl::OUString&, const rtl::OUString&, SystemChildWindow*): Assertion `rc && "could not load UI file"' failed.

Version: 6.5.0.0.alpha0+
Build ID: 884714b336696202adffe6f4684127c0f2758c14
CPU threads: 8; OS: Linux 5.4; UI render: default; VCL: gtk3; 
Locale: en-US (en_US.UTF-8); UI-Language: en-US
Calc: threaded

No crash with SAL_USE_VCLPLUGIN=gen.
Comment 1 Julien Nabet 2020-01-06 20:16:13 UTC
Created attachment 156972 [details]
bt with debug symbols (gtk3)

On pc Debian x86-64 with master sources updated today, I could reproduce this.
Comment 2 Julien Nabet 2020-01-06 20:23:16 UTC
Regression from:
https://cgit.freedesktop.org/libreoffice/core/commit/?id=9667a8ab1c4809c75f6258a8739b9036c86b2a37
tdf#129517 add "Preview" labels in BulletandNumberingStyle dialog box
- on Position tab
- on Customize tab

Reverting this commit locally prevents my build from crashing.
This log seems to indicate the issue:
(soffice:625862): Gtk-WARNING **: 21:15:18.179: 'label' is not a valid child type of 'GtkBox'
Comment 3 Julien Nabet 2020-01-06 20:24:10 UTC
Seth: see https://bugs.documentfoundation.org/show_bug.cgi?id=129837#c2
Comment 4 Heiko Tietze 2020-01-06 20:39:18 UTC
(In reply to Julien Nabet from comment #2)
> Regression from...

Hard to believe that adding a static label makes this trouble.
Comment 5 sdc.blanco 2020-01-06 21:36:57 UTC
(In reply to Heiko Tietze from comment #4)
> (In reply to Julien Nabet from comment #2)
> > Regression from...
> 
> Hard to believe that adding a static label makes this trouble.

Mild hypothesis:  <object class="GtkFrame"> needs to be added wrap both the preview window and the label (in both numberingposition.ui and numberingoption.ui)

<object class="GtkFrame">
  <child type="label">
    <object class="GtkLabel" id="frame-label"/>
  </child>
  <child>
    <object class="GtkEntry" id="frame-content"/>
  </child>
</object>
Comment 6 sdc.blanco 2020-01-06 22:04:07 UTC
(In reply to Julien Nabet from comment #2)
> This log seems to indicate the issue:
> (soffice:625862): Gtk-WARNING **: 21:15:18.179: 'label' is not a valid child
> type of 'GtkBox'
Also consistent with my mild hypothesis.  This GtkBox for numberingposition.ui will be  <object class="GtkBox" id="box1">  and it is true that GtkBox does not have label as a child type.
Comment 7 sdc.blanco 2020-01-07 03:46:07 UTC
(In reply to Julien Nabet from comment #2)
https://gerrit.libreoffice.org/c/core/+/86320

If you have the possibility to confirm that this version does not lead to a crash then I would be grateful.
Comment 8 Xisco Faulí 2020-01-07 21:00:57 UTC
*** Bug 129864 has been marked as a duplicate of this bug. ***
Comment 9 Heiko Tietze 2020-01-08 15:16:10 UTC
Fixed with https://gerrit.libreoffice.org/c/core/+/86320
Comment 10 Xisco Faulí 2020-01-09 10:47:40 UTC
Verified in

Version: 6.5.0.0.alpha0+
Build ID: 838935758a5ec8e0e68f4df0cf5bfcf737e3f6f2
CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk3; 
Locale: ca-ES (ca_ES.UTF-8); UI-Language: en-US
Calc: threaded

@Seth Chaiklin, thanks for fixing this issue!