segfault in menu_hidden()

Bug #1246536 reported by Sebastien Bacher
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
The Sound Menu
Fix Released
High
Unassigned
ido (Ubuntu)
Fix Released
High
Lars Karlitski
Saucy
Fix Released
High
Unassigned

Bug Description

Impact: indicator-sound is segfaulting the unity-panel-service sometimes

Test Case:
- install the current GTK version from saucy-proposed
- use the indicator-sound slider and the play multimedia key to start/stop rhythmbox
- the indicator should be stable

Regression potential: try desktop indicators and make sure they keep working

-------

Using saucy stable, happened a few times today while using the slider, muting/unmuting, using play multimedia key/mpris to start/stop rhythmbox

"#0 menu_hidden (menu=0x96882c0, scale=0x97b8110) at idoscalemenuitem.c:640
#1 0xb6e454d3 in g_cclosure_marshal_VOID__VOID (closure=0x97b5818,
    return_value=0x0, n_param_values=1, param_values=0xbff2e970,
    invocation_hint=0xbff2e91c, marshal_data=0x0)
    at /build/buildd/glib2.0-2.38.1/./gobject/gmarshal.c:85
#2 0xb6e438ae in g_closure_invoke (closure=0x97b5818,
    return_value=return_value@entry=0x0, n_param_values=1,
    param_values=param_values@entry=0xbff2e970,
    invocation_hint=invocation_hint@entry=0xbff2e91c)
    at /build/buildd/glib2.0-2.38.1/./gobject/gclosure.c:777
#3 0xb6e55df9 in signal_emit_unlocked_R (node=node@entry=0x9562ec8, detail=0,
    instance=0x96882c0, emission_return=emission_return@entry=0x0,
    instance_and_params=0xbff2e970)
    at /build/buildd/glib2.0-2.38.1/./gobject/gsignal.c:3586
#4 0xb6e5d753 in g_signal_emit_valist (instance=instance@entry=0x96882c0,
    signal_id=signal_id@entry=5, detail=detail@entry=0,
    var_args=var_args@entry=0xbff2eaac "h\027;\267")
    at /build/buildd/glib2.0-2.38.1/./gobject/gsignal.c:3330
#5 0xb6e5d9e3 in g_signal_emit (instance=instance@entry=0x96882c0,
    signal_id=5, detail=detail@entry=0)
    at /build/buildd/glib2.0-2.38.1/./gobject/gsignal.c:3386
#6 0xb73b1820 in gtk_widget_hide (widget=widget@entry=0x96882c0)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkwidget.c:4268
#7 0xb7278678 in gtk_menu_popdown (menu=menu@entry=0x96882c0)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkmenu.c:1848
#8 0xb727877d in gtk_menu_deactivate (menu_shell=0x96882c0)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkmenu.c:4546
#9 0xb6e454d3 in g_cclosure_marshal_VOID__VOID (closure=0x956c640,
    return_value=0x0, n_param_values=1, param_values=0xbff2ec90,
    invocation_hint=0xbff2ec3c, marshal_data=0xb7278700 <gtk_menu_deactivate>)
    at /build/buildd/glib2.0-2.38.1/./gobject/gmarshal.c:85
#10 0xb6e423d4 in g_type_class_meta_marshal (closure=0x956c640,
    return_value=0x0, n_param_values=1, param_values=0xbff2ec90,
    invocation_hint=0xbff2ec3c, marshal_data=0x1ec)
    at /build/buildd/glib2.0-2.38.1/./gobject/gclosure.c:970
#11 0xb6e438ae in g_closure_invoke (closure=closure@entry=0x956c640,
    return_value=return_value@entry=0x0, n_param_values=1,
    param_values=param_values@entry=0xbff2ec90,
    invocation_hint=invocation_hint@entry=0xbff2ec3c)
    at /build/buildd/glib2.0-2.38.1/./gobject/gclosure.c:777
#12 0xb6e5549c in signal_emit_unlocked_R (node=node@entry=0x956d3b8, detail=0,
    instance=0x96882c0, emission_return=emission_return@entry=0x0,
    instance_and_params=0xbff2ec90)
    at /build/buildd/glib2.0-2.38.1/./gobject/gsignal.c:3516
#13 0xb6e5d753 in g_signal_emit_valist (instance=instance@entry=0x96882c0,
    signal_id=signal_id@entry=82, detail=detail@entry=0,
    var_args=var_args@entry=0xbff2edcc "")
    at /build/buildd/glib2.0-2.38.1/./gobject/gsignal.c:3330
#14 0xb6e5d9e3 in g_signal_emit (instance=instance@entry=0x96882c0,
    signal_id=82, detail=detail@entry=0)
    at /build/buildd/glib2.0-2.38.1/./gobject/gsignal.c:3386
#15 0xb7282923 in gtk_menu_shell_deactivate (menu_shell=0x96882c0)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkmenushell.c:616
#16 0xb7283202 in gtk_menu_shell_activate_item (
    menu_shell=menu_shell@entry=0x96882c0,
    menu_item=menu_item@entry=0x962a0b8,
    force_deactivate=force_deactivate@entry=1)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkmenushell.c:1433
#17 0xb7283626 in gtk_menu_shell_button_release (widget=0x96882c0,
    event=0x9648650)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkmenushell.c:842
#18 0xb7276ce9 in gtk_menu_button_release (widget=0x96882c0, event=0x9648650)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkmenu.c:3391
#19 0xb7267ee6 in _gtk_marshal_BOOLEAN__BOXEDv (closure=0x9563f18,
    return_value=0xbff2efa8, instance=0x96882c0,
    args=0xbff2f07c "P\206d\t\234\360\362\277\070\243U\t\020\312V\t",
    marshal_data=0xb7276c60 <gtk_menu_button_release>, n_params=1,
    param_types=0x9563f30)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkmarshalers.c:130
#20 0xb6e42287 in g_type_class_meta_marshalv (closure=0x9563f18,
    return_value=0xbff2efa8, instance=0x96882c0,
    args=0xbff2f07c "P\206d\t\234\360\362\277\070\243U\t\020\312V\t",
    marshal_data=0xc4, n_params=1, param_types=0x9563f30)
    at /build/buildd/glib2.0-2.38.1/./gobject/gclosure.c:997
#21 0xb6e43aee in _g_closure_invoke_va (closure=closure@entry=0x9563f18,
    return_value=return_value@entry=0xbff2efa8,
    instance=instance@entry=0x96882c0,
    args=args@entry=0xbff2f07c "P\206d\t\234\360\362\277\070\243U\t\020\312V\t", n_params=1, param_types=0x9563f30)
    at /build/buildd/glib2.0-2.38.1/./gobject/gclosure.c:840
#22 0xb6e5ce70 in g_signal_emit_valist (instance=instance@entry=0x96882c0,
    signal_id=signal_id@entry=29, detail=detail@entry=0,
    var_args=var_args@entry=0xbff2f07c "P\206d\t\234\360\362\277\070\243U\t\020\312V\t") at /build/buildd/glib2.0-2.38.1/./gobject/gsignal.c:3238
#23 0xb6e5d9e3 in g_signal_emit (instance=instance@entry=0x96882c0,
    signal_id=29, detail=detail@entry=0)
    at /build/buildd/glib2.0-2.38.1/./gobject/gsignal.c:3386
#24 0xb73a6b8b in gtk_widget_event_internal (widget=widget@entry=0x96882c0,
    event=event@entry=0x9648650)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkwidget.c:6721
#25 0xb73a6e65 in gtk_widget_event (widget=widget@entry=0x96882c0,
    event=event@entry=0x9648650)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkwidget.c:6378
#26 0xb7265cc5 in propagate_event_up (topmost=<optimized out>,
    event=<optimized out>, widget=0x96882c0)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkmain.c:2399
#27 propagate_event (widget=<optimized out>, event=0x9648650, captured=0,
    topmost=0x0)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkmain.c:2507
#28 0xb7267ad0 in gtk_main_do_event (event=0x9648650)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkmain.c:1712
#29 0xb705c26c in _gdk_event_emit (event=event@entry=0x9648650)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gdk/gdkevents.c:69
#30 0xb70883a2 in gdk_event_source_dispatch (source=source@entry=0x958b970,
    callback=0x0, user_data=0x0)
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gdk/x11/gdkeventsource.c:364
#31 0xb6d7883e in g_main_dispatch (context=0x958f8f0, context@entry=0x959bd38)
    at /build/buildd/glib2.0-2.38.1/./glib/gmain.c:3065
#32 g_main_context_dispatch (context=context@entry=0x958f8f0)
    at /build/buildd/glib2.0-2.38.1/./glib/gmain.c:3641
#33 0xb6d78be8 in g_main_context_iterate (context=0x958f8f0,
    block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
    at /build/buildd/glib2.0-2.38.1/./glib/gmain.c:3712
#34 0xb6d7904b in g_main_loop_run (loop=loop@entry=0x96ce6c8)
    at /build/buildd/glib2.0-2.38.1/./glib/gmain.c:3906
#35 0xb7266d8d in gtk_main ()
    at /tmp/gtk+3/build-area/gtk+3.0-3.8.6/./gtk/gtkmain.c:1156
#36 0x0804bacb in main ()"

Related branches

Revision history for this message
Sebastien Bacher (seb128) wrote :

the stacktrace is an unity-panel-service one

Changed in indicator-sound (Ubuntu):
assignee: nobody → Lars Uebernickel (larsu)
importance: Undecided → High
Changed in indicator-sound:
importance: Undecided → High
Lars Karlitski (larsu)
Changed in indicator-sound (Ubuntu):
status: New → In Progress
description: updated
Changed in indicator-sound:
status: New → Fix Committed
affects: indicator-sound (Ubuntu) → ido (Ubuntu)
Changed in ido (Ubuntu Saucy):
importance: Undecided → High
status: New → In Progress
Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Sebastien, or anyone else affected,

Accepted ido into saucy-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/ido/13.10.0+13.10.20131031-0ubuntu1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in ido (Ubuntu Saucy):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ido - 13.10.0+14.04.20131105.1-0ubuntu1

---------------
ido (13.10.0+14.04.20131105.1-0ubuntu1) trusty; urgency=low

  [ Ubuntu daily release ]
  * debian/*symbols: auto-update new symbols to released version

  [ Lars Uebernickel ]
  * Make IdoSwitchMenuItem accessible from gtk_menu_new_from_model.
  * IdoUserMenuItem: only allow file icons as avatars In practice, all
    avatars are file icons. This restriction allowed for quite some
    cleanup, as we don't need to worry about symbolic icons and themes
    aymore. Note: this patch removes the warning when the user avatar
    image was not found. This is a common enough case that the warning
    just clutters up logs.
  * idoscalemenuitem: disconnect signal from parent This fixes a crash:
    the widget installed a handler for the parent's hide signal, but was
    destroyed before the parent without disconnecting the signal. (LP:
    #1246536)

  [ Ubuntu daily release ]
  * Automatic snapshot from revision 156
 -- Ubuntu daily release <email address hidden> Tue, 05 Nov 2013 11:01:56 +0000

Changed in ido (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
Sebastien Bacher (seb128) wrote :

testing (and errors.ubuntu.com) seems to confirm the fix is working

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ido - 13.10.0+13.10.20131031-0ubuntu1

---------------
ido (13.10.0+13.10.20131031-0ubuntu1) saucy; urgency=low

  [ Lars Uebernickel ]
  * idoscalemenuitem: disconnect signal from parent This fixes a crash:
    the widget installed a handler for the parent's hide signal, but was
    destroyed before the parent without disconnecting the signal. (LP:
    #1246536)

  [ Ubuntu daily release ]
  * Automatic snapshot from revision 154
 -- Ubuntu daily release <email address hidden> Thu, 31 Oct 2013 21:39:29 +0000

Changed in ido (Ubuntu Saucy):
status: Fix Committed → Fix Released
Changed in indicator-sound:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.