with current git tree, parole crashes as soon as you try to change volume (either with -/+ or the volume slider (buttons and mousewheel)). The volume_value_changed_cb is called with a garbage ptr for ParolePlayer. Starting program: /home/landry/src/xfce/parole/src/parole (parole:21363): Gtk-WARNING **: Unknown property: GtkMenu.ubuntu-local (parole:21363): Gtk-WARNING **: Unknown property: GtkMenu.ubuntu-local Program received signal SIGSEGV, Segmentation fault. 0x1c010513 in parole_player_volume_value_changed_cb (widget=0x86701100, player=0xcccccccd) at parole-player.c:1645 1645 value = gtk_scale_button_get_value (GTK_SCALE_BUTTON (player->priv->volume)); (gdb) bt #0 0x1c010513 in parole_player_volume_value_changed_cb (widget=0x86701100, player=0xcccccccd) at parole-player.c:1645 Note that 'ubuntu_local' property in parole.ui is invalid and triggers warnings on other oses, please remove it.
It also crashes if using the mute item from the audio menu : #0 0x1c010513 in parole_player_volume_value_changed_cb (widget=0x831b9900, player=0x0) at parole-player.c:1645 #1 0x032bdf5a in g_cclosure_marshal_VOID__DOUBLE () from /usr/local/lib/libgobject-2.0.so.3200.0 #2 0x032bc335 in g_closure_invoke () from /usr/local/lib/libgobject-2.0.so.3200.0 #3 0x032d19c4 in g_signal_handler_find () from /usr/local/lib/libgobject-2.0.so.3200.0 #4 0x032d3e94 in g_signal_emit_valist () from /usr/local/lib/libgobject-2.0.so.3200.0 #5 0x032d4175 in g_signal_emit () from /usr/local/lib/libgobject-2.0.so.3200.0 #6 0x0dfa83e3 in gtk_scale_button_get_value () from /usr/local/lib/libgtk-x11-2.0.so.2400.0 #7 0x032bd0b9 in g_cclosure_marshal_VOID__VOIDv () from /usr/local/lib/libgobject-2.0.so.3200.0 #8 0x032b9b23 in g_value_set_static_boxed () from /usr/local/lib/libgobject-2.0.so.3200.0 #9 0x032bc064 in g_closure_unref () from /usr/local/lib/libgobject-2.0.so.3200.0 #10 0x032d3533 in g_signal_emit_valist () from /usr/local/lib/libgobject-2.0.so.3200.0 #11 0x032d4175 in g_signal_emit () from /usr/local/lib/libgobject-2.0.so.3200.0 #12 0x0df8609c in gtk_radio_tool_button_new_from_widget () from /usr/local/lib/libgtk-x11-2.0.so.2400.0 #13 0x032be6df in g_cclosure_marshal_VOID__VOID () from /usr/local/lib/libgobject-2.0.so.3200.0 #14 0x032bc335 in g_closure_invoke () from /usr/local/lib/libgobject-2.0.so.3200.0 #15 0x032d19c4 in g_signal_handler_find () from /usr/local/lib/libgobject-2.0.so.3200.0 #16 0x032d3e94 in g_signal_emit_valist () from /usr/local/lib/libgobject-2.0.so.3200.0 #17 0x032d4175 in g_signal_emit () from /usr/local/lib/libgobject-2.0.so.3200.0 #18 0x0de73a0a in gtk_adjustment_value_changed () from /usr/local/lib/libgtk-x11-2.0.so.2400.0 #19 0x1c00f7fb in parole_player_volume_mute (widget=0x87fb3878, player=0x81f3e000) at parole-player.c:1668 other trace when using - : #0 0x1c010513 in parole_player_volume_value_changed_cb (widget=0x8a690900, player=0xcccccccd) at parole-player.c:1645 #1 0x0de3df5a in g_cclosure_marshal_VOID__DOUBLE () from /usr/local/lib/libgobject-2.0.so.3200.0 #2 0x0de3c335 in g_closure_invoke () from /usr/local/lib/libgobject-2.0.so.3200.0 #3 0x0de519c4 in g_signal_handler_find () from /usr/local/lib/libgobject-2.0.so.3200.0 #4 0x0de53e94 in g_signal_emit_valist () from /usr/local/lib/libgobject-2.0.so.3200.0 #5 0x0de54175 in g_signal_emit () from /usr/local/lib/libgobject-2.0.so.3200.0 #6 0x0144a3e3 in gtk_scale_button_get_value () from /usr/local/lib/libgtk-x11-2.0.so.2400.0 #7 0x0de3d0b9 in g_cclosure_marshal_VOID__VOIDv () from /usr/local/lib/libgobject-2.0.so.3200.0 #8 0x0de39b23 in g_value_set_static_boxed () from /usr/local/lib/libgobject-2.0.so.3200.0 #9 0x0de3c064 in g_closure_unref () from /usr/local/lib/libgobject-2.0.so.3200.0 #10 0x0de53533 in g_signal_emit_valist () from /usr/local/lib/libgobject-2.0.so.3200.0 #11 0x0de54175 in g_signal_emit () from /usr/local/lib/libgobject-2.0.so.3200.0 #12 0x0142809c in gtk_radio_tool_button_new_from_widget () from /usr/local/lib/libgtk-x11-2.0.so.2400.0 #13 0x0de3e6df in g_cclosure_marshal_VOID__VOID () from /usr/local/lib/libgobject-2.0.so.3200.0 #14 0x0de3c335 in g_closure_invoke () from /usr/local/lib/libgobject-2.0.so.3200.0 #15 0x0de519c4 in g_signal_handler_find () from /usr/local/lib/libgobject-2.0.so.3200.0 #16 0x0de53e94 in g_signal_emit_valist () from /usr/local/lib/libgobject-2.0.so.3200.0 #17 0x0de54175 in g_signal_emit () from /usr/local/lib/libgobject-2.0.so.3200.0 #18 0x01315a0a in gtk_adjustment_value_changed () from /usr/local/lib/libgtk-x11-2.0.so.2400.0 #19 0x1c01039c in parole_player_volume_down (widget=0x879aa800, player=0x7e60c000) at parole-player.c:1663
Salut Landry, I've had a hard time tracking down your volume-issues and since I haven't been able to reproduce them, I haven't really been able to fix anything there... I feel a bit useless doing this, but here's the commit where I changed the GtkRange into a GtkVolumeButton/ScaleButton. Personally I don't see any problems with this commit, but then again I have too little experience to say for sure if this isn't already the problem-maker: http://git.xfce.org/apps/parole/commit?id=dfa0bc2acb4f22aa964fe421dd1d4f4544d19be8 It'd be great if you could take a quick peek into the commit - merci, Simon
Created attachment 4567 Fix crash Attached patch fixes the issue. In GtkScaleButton, value-changed takes three arguments, see http://developer.gnome.org/gtk/2.24/GtkScaleButton.html#GtkScaleButton-value-changed. I wonder how this can work on linux.. by luck, probably :)
Patch applied to master, thanks!