Comment 2 for bug 531103

Revision history for this message
Pedro CĂ´rte-Real (pedrocr) wrote :

I reproduced the bug consistently by running it in g-p-m in gdb with:

CK_FORK="no" G_DEBUG="fatal_criticals" libtool --mode=execute gdb gnome-power-manager

Starting with my laptop connected to AC power I unplugged and got the immediate warning and this stack trace:

#0 IA__g_logv (log_domain=<value optimized out>, log_level=<value optimized out>, format=<value optimized out>,
    args1=0x7fffffffdd50) at /build/buildd/glib2.0-2.23.4/glib/gmessages.c:555
#1 0x00007ffff4a556e3 in IA__g_log (log_domain=0x7ffff4a08e40 "", log_level=0, format=0x1 <Address 0x1 out of bounds>)
    at /build/buildd/glib2.0-2.23.4/glib/gmessages.c:569
#2 0x00007ffff6801269 in unfallback (self=0x6c4a00, status_icon=0x6952a0) at libappindicator/app-indicator.c:898
#3 0x00007ffff680029c in fallback_timer_expire (data=<value optimized out>) at libappindicator/app-indicator.c:804
#4 0x00007ffff4a4b5cb in g_timeout_dispatch (source=0x6b2040, callback=0, user_data=0x1)
    at /build/buildd/glib2.0-2.23.4/glib/gmain.c:3396
#5 0x00007ffff4a4adf2 in g_main_dispatch (context=0x66ed70) at /build/buildd/glib2.0-2.23.4/glib/gmain.c:1960
#6 IA__g_main_context_dispatch (context=0x66ed70) at /build/buildd/glib2.0-2.23.4/glib/gmain.c:2513
#7 0x00007ffff4a4ec38 in g_main_context_iterate (context=0x66ed70, block=<value optimized out>,
    dispatch=<value optimized out>, self=<value optimized out>) at /build/buildd/glib2.0-2.23.4/glib/gmain.c:2591
#8 0x00007ffff4a4f17d in IA__g_main_loop_run (loop=0x6b5050) at /build/buildd/glib2.0-2.23.4/glib/gmain.c:2799
#9 0x00000000004109ab in main (argc=1, argv=0x7fffffffe2c8) at gpm-main.c:276

Seems like the real bug is in frame #2 and actually inside libappindicator. libappindicator/app-indicator.c:898 does:

gtk_widget_hide(GTK_WIDGET(status_icon));

where status_icon is a GtkStatusIcon, something that according to the manual descends directly from GObject and that is why the GTK_IS_WIDGET assertion then fails.

The bus is thus in libappindicator and is the same as #530429.