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 459561 - critical warnings with custom tooltips
critical warnings with custom tooltips
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: Widget: Other
unspecified
Other Linux
: Normal critical
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks: 459563
 
 
Reported: 2007-07-23 13:43 UTC by Christian Persch
Modified: 2007-07-24 03:55 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Christian Persch 2007-07-23 13:43:57 UTC
When using gtk_tooltip_set_custom, I get critical warnings when setting the next custom tooltip:

Gtk-CRITICAL **: gtk_container_remove: assertion `GTK_IS_TOOLBAR (container) || widget->parent == GTK_WIDGET (container)' failed

GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed

(gdb) where
  • #0 g_log
    at gmessages.c line 516
  • #1 g_return_if_fail_warning
  • #2 gtk_container_remove
    at gtkcontainer.c line 1177
  • #3 gtk_tooltip_set_custom
    at gtktooltip.c line 317
  • #4 gtk_tooltip_window_hide
    at gtktooltip.c line 431
  • #5 g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 77
  • #6 g_closure_invoke
    at gclosure.c line 490
  • #7 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #8 g_signal_emit_valist
    at gsignal.c line 2199
  • #9 g_signal_emit
    at gsignal.c line 2243
  • #10 gtk_widget_hide
    at gtkwidget.c line 3024
  • #11 gtk_tooltip_hide_tooltip
    at gtktooltip.c line 900
  • #12 do_screen_change
    at gtkwidget.c line 6061
  • #13 gtk_widget_propagate_hierarchy_changed_recurse
    at gtkwidget.c line 6084
  • #14 _gtk_widget_propagate_hierarchy_changed
    at gtkwidget.c line 6124
  • #15 gtk_widget_unparent
    at gtkwidget.c line 2850
  • #16 gtk_box_remove
    at gtkbox.c line 759
  • #17 g_cclosure_marshal_VOID__OBJECT
    at gmarshal.c line 636
  • #18 g_type_class_meta_marshal
    at gclosure.c line 567
  • #19 g_closure_invoke
    at gclosure.c line 490
  • #20 signal_emit_unlocked_R
    at gsignal.c line 2370
  • #21 g_signal_emit_valist
  • #22 g_signal_emit
    at gsignal.c line 2243
  • #23 gtk_container_remove
    at gtkcontainer.c line 1186
  • #24 gtk_tooltip_set_custom
    at gtktooltip.c line 317
  • #25 gtk_tooltip_run_requery
    at gtktooltip.c line 403
  • #26 _gtk_tooltip_handle_event
    at gtktooltip.c line 1150
  • #27 gtk_main_do_event
    at gtkmain.c line 1588
  • #28 gdk_event_dispatch
    at gdkevents-x11.c line 2351
  • #29 g_main_context_dispatch
    at gmain.c line 2061
  • #30 g_main_context_iterate
    at gmain.c line 2694
  • #31 g_main_loop_run
    at gmain.c line 2898
  • #32 gtk_main
    at gtkmain.c line 1143
  • #33 main
    at testtooltips.c line 417

gtk+ svn trunk.
Comment 1 Matthias Clasen 2007-07-24 03:55:34 UTC
2007-07-23  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktooltip.c (gtk_tooltip_set_custom): Protect against
        recursion via gtk_container_remove().  (#459561, Christian Persch)
        (gtk_tooltip_window_hide): Simplify.