I have spent sometime debugging this.
It seems that there is a mysterious property update received on both slider 
items when players are added to the menu or more particularly when the player's 
playlist item is made visible.

I found that by breaking on the property update callback on the volume
widget a sequence of updates are received for each property of that item
(including type etc.) when the playlist item is 'turned on'.

Here is the back trace of the culprit that sets the system volume to 0.

#0  volume_widget_property_update (item=0x943e6a8, 
    property=0x969bc00 "x-canonical-ido-volume-level", value=0x0, 
    userdata=0x9670460) at volume-widget.c:131
#1  0x03f9d20f in ?? () from /usr/lib/libdbusmenu-glib.so.3
#2  0x00d8b372 in g_closure_invoke (closure=0xaa7399f8, return_value=0x0, 
    n_param_values=3, param_values=0x939fe88, invocation_hint=0xbfd51c90)
    at /build/buildd/glib2.0-2.28.3/./gobject/gclosure.c:767
#3  0x00d9e048 in signal_emit_unlocked_R (node=0x94f3738, detail=0, 
    instance=0x943e6a8, emission_return=0x0, instance_and_params=0x939fe88)
    at /build/buildd/glib2.0-2.28.3/./gobject/gsignal.c:3252
#4  0x00da6b29 in g_signal_emit_valist (instance=0x943e6a8, signal_id=223, 
    detail=0, var_args=0xbfd51e54 "\001")
    at /build/buildd/glib2.0-2.28.3/./gobject/gsignal.c:2983
#5  0x00da6cc2 in g_signal_emit (instance=0x943e6a8, signal_id=223, detail=0)
    at /build/buildd/glib2.0-2.28.3/./gobject/gsignal.c:3040
#6  0x03f9b41b in dbusmenu_menuitem_property_set_variant ()
   from /usr/lib/libdbusmenu-glib.so.3
#7  0x03f9c110 in dbusmenu_menuitem_property_remove ()
   from /usr/lib/libdbusmenu-glib.so.3
#8  0x03fa2b6a in ?? () from /usr/lib/libdbusmenu-glib.so.3
#9  0x03fa2693 in ?? () from /usr/lib/libdbusmenu-glib.so.3
#10 0x005accbf in g_simple_async_result_complete (simple=0x9720820)
    at /build/buildd/glib2.0-2.28.3/./gio/gsimpleasyncresult.c:747
#11 0x00602cc1 in reply_cb (connection=0x93fe010, res=0x9720858, 
    user_data=0x9720820)
    at /build/buildd/glib2.0-2.28.3/./gio/gdbusproxy.c:2158
#12 0x005accbf in g_simple_async_result_complete (simple=0x9720858)
    at /build/buildd/glib2.0-2.28.3/./gio/gsimpleasyncresult.c:747
#13 0x005f7d03 in g_dbus_connection_call_done (source=0x93fe010, 
    result=0x9720890, user_data=0x9720d30)
    at /build/buildd/glib2.0-2.28.3/./gio/gdbusconnection.c:4998
#14 0x005accbf in g_simple_async_result_complete (simple=0x9720890)
    at /build/buildd/glib2.0-2.28.3/./gio/gsimpleasyncresult.c:747
#15 0x005acddd in complete_in_idle_cb (data=0x9720890)
    at /build/buildd/glib2.0-2.28.3/./gio/gsimpleasyncresult.c:757
#16 0x00c2a311 in g_idle_dispatch (source=0xaa7b4900, 
    callback=0x5acdc0 <complete_in_idle_cb>, user_data=0x9720890)
    at /build/buildd/glib2.0-2.28.3/./glib/gmain.c:4545
#17 0x00c2eaa8 in g_main_dispatch (context=0x93a21c0)
    at /build/buildd/glib2.0-2.28.3/./glib/gmain.c:2440
#18 g_main_context_dispatch (context=0x93a21c0)
    at /build/buildd/glib2.0-2.28.3/./glib/gmain.c:3013
#19 0x00c2f270 in g_main_context_iterate (context=0x93a21c0, block=12843040, 
    dispatch=1, self=<value optimised out>)
    at /build/buildd/glib2.0-2.28.3/./glib/gmain.c:3091
#20 0x00c2f92b in g_main_loop_run (loop=0x9505e08)

No. 7 catches my attention.
>>dbusmenu_menuitem_property_remove () from /usr/lib/libdbusmenu-glib.so.3

I have found that  through my ordinary trace on that same property
update callback, updates for custom properties (like volume level and
mute status) are not of the type that I pack them in on the other side
of the bus.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/730925

Title:
  volume goes to zero when using some players like banshee, rhythmbox

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to