After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 786871 - Segfault while opening/closing ComboBox menu, caused by NULL CssGadget
Segfault while opening/closing ComboBox menu, caused by NULL CssGadget
Status: RESOLVED OBSOLETE
Product: gtk+
Classification: Platform
Component: Widget: GtkComboBox
3.22.x
Other Linux
: Normal normal
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2017-08-27 19:28 UTC by Daniel Boles
Modified: 2018-05-02 18:57 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Daniel Boles 2017-08-27 19:28:05 UTC
I ran testcombo and started messing around opening/closing/browsing into submenus of the ComboBox that offers a list of species.

The ultimate cause is trying to call get_preferred_size() on a NULL CssGadget.

This may be related to submenus popping up/down quickly; I've not narrowed it down yet. That's made more difficult by the fact that apparently a failed ComboBox can retain a grab and not let me do anything else with my system without switching tty, logging in as root, and killing the test and gdb.

Thread 1 "testcombo" received signal SIGSEGV, Segmentation fault.
0x00007ffff7575161 in gtk_css_gadget_get_visible (gadget=0x0)
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkcssgadget.c:357
357	  return gtk_css_node_get_visible (priv->node);
(ins)(gdb) bt
  • #0 gtk_css_gadget_get_visible
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkcssgadget.c line 357
  • #1 gtk_css_gadget_get_preferred_size
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkcssgadget.c line 626
  • #2 gtk_menu_item_real_get_height
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkmenuitem.c line 529
  • #3 gtk_menu_item_measure
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkmenuitem.c line 580
  • #4 gtk_css_custom_gadget_get_preferred_size
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkcsscustomgadget.c line 124
  • #5 gtk_css_gadget_get_preferred_size
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkcssgadget.c line 675
  • #6 gtk_menu_item_get_preferred_height
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkmenuitem.c line 600
  • #7 gtk_widget_query_size_for_orientation
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtksizerequest.c line 219
  • #8 gtk_widget_compute_size_for_orientation
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtksizerequest.c line 399
  • #9 gtk_widget_get_preferred_height
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtksizerequest.c line 527
  • #10 gtk_combo_box_menu_popup
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkcombobox.c line 2204
  • #11 gtk_combo_box_menu_button_press
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkcombobox.c line 2825
  • #12 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 82
  • #13 g_closure_invoke
    at /home/daniel/jhbuild/checkout/gnome/glib/gobject/gclosure.c line 804
  • #14 signal_emit_unlocked_R
    at /home/daniel/jhbuild/checkout/gnome/glib/gobject/gsignal.c line 3635
  • #15 g_signal_emit_valist
    at /home/daniel/jhbuild/checkout/gnome/glib/gobject/gsignal.c line 3401
  • #16 g_signal_emit
    at /home/daniel/jhbuild/checkout/gnome/glib/gobject/gsignal.c line 3447
  • #17 gtk_widget_event_internal
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkwidget.c line 7723
  • #18 gtk_widget_event
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkwidget.c line 7293
  • #19 propagate_event_up
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkmain.c line 2578
  • #20 propagate_event
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkmain.c line 2680
  • #21 gtk_propagate_event
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkmain.c line 2715
  • #22 gtk_main_do_event
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkmain.c line 1911
  • #23 _gdk_event_emit
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gdk/gdkevents.c line 73
  • #24 gdk_event_source_dispatch
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gdk/x11/gdkeventsource.c line 367
  • #25 g_main_dispatch
    at /home/daniel/jhbuild/checkout/gnome/glib/glib/gmain.c line 3148
  • #26 g_main_context_dispatch
    at /home/daniel/jhbuild/checkout/gnome/glib/glib/gmain.c line 3813
  • #27 g_main_context_iterate
    at /home/daniel/jhbuild/checkout/gnome/glib/glib/gmain.c line 3886
  • #28 g_main_loop_run
    at /home/daniel/jhbuild/checkout/gnome/glib/glib/gmain.c line 4082
  • #29 gtk_main
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/gtk/gtkmain.c line 1322
  • #30 main
    at /home/daniel/jhbuild/checkout/gnome/gtk+-3/tests/testcombo.c line 1449

Comment 1 GNOME Infrastructure Team 2018-05-02 18:57:37 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gtk/issues/891.