Bug 145297 - Assert fails in debug build when click on icon to open the "3D Effects" dialog
Summary: Assert fails in debug build when click on icon to open the "3D Effects" dialog
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Draw (show other bugs)
Version:
(earliest affected)
7.3.0.0 alpha0+
Hardware: x86-64 (AMD64) All
: medium normal
Assignee: Caolán McNamara
URL:
Whiteboard: target:7.3.0 target:7.2.3
Keywords:
Depends on:
Blocks: Crash-Assert
  Show dependency treegraph
 
Reported: 2021-10-24 12:57 UTC by Regina Henschel
Modified: 2021-10-27 08:07 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
Call stack by VS 2019 (4.19 KB, text/plain)
2021-10-24 12:57 UTC, Regina Henschel
Details
bt with debug symbols (10.27 KB, text/plain)
2021-10-24 17:22 UTC, Julien Nabet
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Regina Henschel 2021-10-24 12:57:06 UTC
Created attachment 175895 [details]
Call stack by VS 2019

Start a document in Draw and insert a 3D object, e.g. a Cylinder. Click on icon in toolbar to open the "3D Effects" dialog => crash.
The same crash happens when using the "3D Effects" item from the context menu.

It crashes in builder.hxx#438. The value of sID is "Docking3DEffects".

A callstack is attached.

I have not tested whether a current daily build would crash too.
Comment 1 Buovjaga 2021-10-24 15:05:57 UTC
Repro

Arch Linux 64-bit
Version: 7.3.0.0.alpha0+ / LibreOffice Community
Build ID: 463d261e3509cc857e248d8bd5787a45d385a646
CPU threads: 8; OS: Linux 5.14; UI render: default; VCL: kf5 (cairo+xcb)
Locale: fi-FI (fi_FI.UTF-8); UI: en-US
Calc: threaded
Built on 15 October 2021
Comment 2 Julien Nabet 2021-10-24 17:22:28 UTC
Created attachment 175896 [details]
bt with debug symbols

On pc Debian x86-64 with master sources updated today, I could reproduce this with gen and kf5 renderings (not with gtk3).

I noticed this on console:
warn:vcl.layout:32658:32658:include/vcl/builder.hxx:437: .ui widget "Docking3DEffects" needs to correspond to vcl type 6VclBox
soffice.bin: /home/julien/lo/libreoffice/include/vcl/builder.hxx:438: T *VclBuilder::get(const rtl::OString &) [T = VclBox]: Assertion `!w || dynamic_cast<T*>(w)' failed.
Comment 3 Julien Nabet 2021-10-24 19:26:21 UTC
with gtk3 rendering, I got:
(soffice:32252): GLib-GObject-CRITICAL **: 19:17:11.522: g_object_get_qdata: assertion 'G_IS_OBJECT (object)' failed

(soffice:32252): GLib-GObject-WARNING **: 19:18:07.928: invalid cast from 'GtkGrid' to 'GtkBox'

Caolán: I think it's a bit the same pb as tdf#143355
Comment 4 Julien Nabet 2021-10-24 19:36:47 UTC
I installed Glade and added a gtkBox as parent.
Then I saved and put the id on gtkBox instead of the gtkGrid.
If I don't reproduce the assertion, I got a lot of these:
(soffice:35610): GLib-GObject-WARNING **: 21:33:20.615: invalid cast from 'GtkImage' to 'GtkLabel'

(soffice:35610): Gtk-CRITICAL **: 21:33:20.615: gtk_label_set_label: assertion 'GTK_IS_LABEL (label)' failed

(soffice:35610): GLib-GObject-WARNING **: 21:33:20.615: invalid cast from 'GtkImage' to 'GtkLabel'

(soffice:35610): Gtk-CRITICAL **: 21:33:20.615: gtk_label_set_label: assertion 'GTK_IS_LABEL (label)' failed

(soffice:35610): GLib-GObject-WARNING **: 21:33:20.630: invalid cast from 'GtkImage' to 'GtkLabel'

(soffice:35610): Gtk-CRITICAL **: 21:33:20.630: gtk_label_set_label: assertion 'GTK_IS_LABEL (label)' failed

(soffice:35610): GLib-GObject-WARNING **: 21:33:20.630: invalid cast from 'GtkImage' to 'GtkLabel'

Of course when I saved the ui file, it changed a lot of things since Glade version is more recent.

Package: glade
Version: 3.38.2-5
Comment 5 Commit Notification 2021-10-25 20:05:21 UTC
Caolán McNamara committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/53daeb9a7b1bf31484a7995114d5f85e32303550

Resolves: tdf#145297 assert on Docking3DEffects launch

It will be available in 7.3.0.

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 6 Caolán McNamara 2021-10-25 20:19:24 UTC
that should fix this in trunk, backport to 7-2 in gerrit
Comment 7 Julien Nabet 2021-10-26 16:44:00 UTC
On pc Debian x86-64 with master sources updated today, I don't reproduce this anymore with gen + kf5 rendering and no more warning or critical logs with gtk3 rendering.
As always, thank you Caolán! :-)
Comment 8 Commit Notification 2021-10-27 08:07:10 UTC
Caolán McNamara committed a patch related to this issue.
It has been pushed to "libreoffice-7-2":

https://git.libreoffice.org/core/commit/7556493a7ae11142781dd8980a338c185a3910d0

Resolves: tdf#145297 assert on Docking3DEffects launch

It will be available in 7.2.3.

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.