#589248 rhythmbox: segfaults when pressing "play"

Package:
rhythmbox
Source:
rhythmbox
Description:
music player and organizer for GNOME
Submitter:
Lars Wirzenius
Date:
2015-02-04 15:45:05 UTC
Severity:
normal
#589248#5
Date:
2010-07-16 05:51:04 UTC
From:
To:
When I start playing songs, rhythmbox immediately segfaults.
Below is what happens when I run it under gdb and take a
backtrace.

liw@havelock$ gdb /usr/bin/rhythmbox
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/rhythmbox...(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/bin/rhythmbox
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffe7166710 (LWP 21786)]

(rhythmbox:21783): GStreamer-CRITICAL **:
Trying to dispose object "sink", but it still has a parent "bin0".
You need to let the parent manage the object instead of unreffing the object directly.


(rhythmbox:21783): GStreamer-CRITICAL **:
Trying to dispose object "src", but it still has a parent "bin0".
You need to let the parent manage the object instead of unreffing the object directly.

[Thread 0x7fffe7166710 (LWP 21786) exited]
[New Thread 0x7fffe7166710 (LWP 21800)]
[Thread 0x7fffe7166710 (LWP 21800) exited]
[New Thread 0x7fffe7166710 (LWP 21805)]
[New Thread 0x7fffd93f6710 (LWP 21806)]
[New Thread 0x7fffd8bf5710 (LWP 21807)]
[New Thread 0x7fffd83f4710 (LWP 21808)]
[Thread 0x7fffd83f4710 (LWP 21808) exited]
[Thread 0x7fffd93f6710 (LWP 21806) exited]
[Thread 0x7fffe7166710 (LWP 21805) exited]

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff4b0255d in ?? () from /usr/lib/libgstreamer-0.10.so.0
(gdb) bt
#0  0x00007ffff4b0255d in ?? () from /usr/lib/libgstreamer-0.10.so.0
#1  0x00007ffff4b0268a in ?? () from /usr/lib/libgstreamer-0.10.so.0
#2  0x00007ffff4b15e24 in gst_pad_link () from /usr/lib/libgstreamer-0.10.so.0
#3  0x00007ffff4b43718 in ?? () from /usr/lib/libgstreamer-0.10.so.0
#4  0x00007ffff4b45049 in gst_element_link_pads () from /usr/lib/libgstreamer-0.10.so.0
#5  0x00007ffff4b45966 in gst_element_link_many () from /usr/lib/libgstreamer-0.10.so.0
#6  0x00007ffff7b524cc in ?? () from /usr/lib/librhythmbox-core.so.0
#7  0x00007ffff7b51bac in ?? () from /usr/lib/librhythmbox-core.so.0
#8  0x00007ffff7b5529a in ?? () from /usr/lib/librhythmbox-core.so.0
#9  0x00007ffff7ae033d in ?? () from /usr/lib/librhythmbox-core.so.0
#10 0x00007ffff7ae405d in rb_shell_player_playpause () from /usr/lib/librhythmbox-core.so.0
#11 0x00007fffde5b33e6 in ?? () from /usr/lib/rhythmbox/plugins/mmkeys/libmmkeys.so
#12 0x00007ffff4141ccf in ?? () from /usr/lib/libdbus-glib-1.so.2
#13 0x00007ffff3a9947e in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#14 0x00007ffff3aaf3f7 in ?? () from /usr/lib/libgobject-2.0.so.0
#15 0x00007ffff3ab0a76 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#16 0x00007ffff3ab0fc3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#17 0x00007ffff4142dde in ?? () from /usr/lib/libdbus-glib-1.so.2
#18 0x00007ffff3f002c6 in dbus_connection_dispatch () from /lib/libdbus-1.so.3
#19 0x00007ffff4139545 in ?? () from /usr/lib/libdbus-glib-1.so.2
#20 0x00007ffff33e26c2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#21 0x00007ffff33e6538 in ?? () from /lib/libglib-2.0.so.0
#22 0x00007ffff33e6a45 in g_main_loop_run () from /lib/libglib-2.0.so.0
#23 0x00007ffff6f40647 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#24 0x0000000000403ea8 in main ()
(gdb)

#589248#10
Date:
2010-07-16 07:21:09 UTC
From:
To:
Le vendredi 16 juillet 2010 à 17:51 +1200, Lars Wirzenius a écrit :

Thanks for your report. Unfortunately the backtrace is incomplete.

Could you try again with libgstreamer0.10-0-dbg, libglib2.0-0-dbg and
rhythmbox-dbg installed?

Cheers,

#589248#15
Date:
2010-07-16 08:12:59 UTC
From:
To:
I hope this is more useful.

liw@havelock$ gdb /usr/bin/rhythmbox
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/rhythmbox...Reading symbols from /usr/lib/debug/usr/bin/rhythmbox...done.
(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/bin/rhythmbox
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffe7166710 (LWP 28671)]
[Thread 0x7fffe7166710 (LWP 28671) exited]

(rhythmbox:28608): GStreamer-CRITICAL **:
Trying to dispose object "sink", but it still has a parent "bin0".
You need to let the parent manage the object instead of unreffing the object directly.


(rhythmbox:28608): GStreamer-CRITICAL **:
Trying to dispose object "src", but it still has a parent "bin0".
You need to let the parent manage the object instead of unreffing the object directly.

[New Thread 0x7fffe7166710 (LWP 28707)]
[New Thread 0x7fffdd5a0710 (LWP 28716)]
[New Thread 0x7fffdcd3e710 (LWP 28722)]
[Thread 0x7fffe7166710 (LWP 28707) exited]
[Thread 0x7fffdd5a0710 (LWP 28716) exited]
[New Thread 0x7fffdd5a0710 (LWP 28739)]
[New Thread 0x7fffe7166710 (LWP 28740)]
[Thread 0x7fffdcd3e710 (LWP 28722) exited]
[New Thread 0x7fffdcd3e710 (LWP 28741)]
[New Thread 0x7fffd7fff710 (LWP 28742)]
[Thread 0x7fffdd5a0710 (LWP 28739) exited]
[Thread 0x7fffe7166710 (LWP 28740) exited]

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff4b0255d in gst_proxy_pad_set_target (pad=0x0, target=0x1ed0920)
    at gstghostpad.c:335
335	gstghostpad.c: No such file or directory.
	in gstghostpad.c
(gdb) bt
#0  0x00007ffff4b0255d in gst_proxy_pad_set_target (pad=0x0, target=0x1ed0920)
    at gstghostpad.c:335
#1  0x00007ffff4b0268a in gst_ghost_pad_do_link (pad=0xa72700, peer=0x1ed0920)
    at gstghostpad.c:641
#2  0x00007ffff4b15e24 in gst_pad_link (srcpad=0x1ed0920, sinkpad=0xa72700)
    at gstpad.c:2041
#3  0x00007ffff4b43718 in pad_link_maybe_ghosting (src=<value optimized out>,
    sink=0xa72700) at gstutils.c:1543
#4  0x00007ffff4b45049 in gst_element_link_pads (src=0x1ece380,
    srcpadname=<value optimized out>, dest=0xaf78a0,
    destpadname=<value optimized out>) at gstutils.c:1686
#5  0x00007ffff4b45966 in gst_element_link_many (element_1=0x1ece380,
    element_2=0xaf78a0) at gstutils.c:1930
#6  0x00007ffff7b524cc in really_add_filter (pad=<value optimized out>,
    blocked=0, op=0x1edaaa0) at rb-player-gst-helper.c:414
#7  0x00007ffff7b51bac in pipeline_op (player=<value optimized out>,
    fixture=<value optimized out>, element=0xaf78a0, use_pad_block=0,
    callback=0x7ffff7b52420 <really_add_filter>) at rb-player-gst-helper.c:342
#8  0x00007ffff7b5529a in construct_pipeline (player=0x643a40,
    uri=0x9ea810 "file:///home/liw/music/Ace%20Frehley%20-%20Trouble%20Walkin'/01.%20Shot%20Full%20Of%20Rock.mp3", stream_data=0x124db70,
    stream_data_destroy=0x7ffff7b352f0 <rhythmdb_entry_unref>,
    error=0x7fffffffde28) at rb-player-gst.c:518
---Type <return> to continue, or q <return> to quit---
#9  impl_open (player=0x643a40,
    uri=0x9ea810 "file:///home/liw/music/Ace%20Frehley%20-%20Trouble%20Walkin'/01.%20Shot%20Full%20Of%20Rock.mp3", stream_data=0x124db70,
    stream_data_destroy=0x7ffff7b352f0 <rhythmdb_entry_unref>,
    error=0x7fffffffde28) at rb-player-gst.c:753
#10 0x00007ffff7ae033d in rb_shell_player_open_location (player=0x9c4010,
    entry=0x124db70, out_of_order=<value optimized out>,
    wait_for_eos=<value optimized out>, error=0x0) at rb-shell-player.c:1608
#11 rb_shell_player_set_playing_entry (player=0x9c4010, entry=0x124db70,
    out_of_order=<value optimized out>, wait_for_eos=<value optimized out>,
    error=0x0) at rb-shell-player.c:1726
#12 0x00007ffff7ae405d in rb_shell_player_playpause (player=0x9c4010,
    unused=<value optimized out>, error=0x0) at rb-shell-player.c:2417
#13 0x00007fffe25db3e6 in media_player_key_pressed (
    proxy=<value optimized out>, application=<value optimized out>,
    key=<value optimized out>, plugin=0xd9e880) at rb-mmkeys-plugin.c:109
#14 0x00007ffff4141ccf in ?? () from /usr/lib/libdbus-glib-1.so.2
#15 0x00007ffff3a9947e in IA__g_closure_invoke (closure=0xfa4140,
    return_value=0x0, n_param_values=3, param_values=0x1ad9140,
    invocation_hint=0x7fffffffe0b0)
    at /tmp/buildd/glib2.0-2.24.1/gobject/gclosure.c:767
#16 0x00007ffff3aaf3f7 in signal_emit_unlocked_R (node=0x94eff0,
    detail=<value optimized out>, instance=<value optimized out>,
---Type <return> to continue, or q <return> to quit---
    emission_return=<value optimized out>,
    instance_and_params=<value optimized out>)
    at /tmp/buildd/glib2.0-2.24.1/gobject/gsignal.c:3248
#17 0x00007ffff3ab0a76 in IA__g_signal_emit_valist (instance=0xd64e70,
    signal_id=<value optimized out>, detail=3243, var_args=0x7fffffffe2a0)
    at /tmp/buildd/glib2.0-2.24.1/gobject/gsignal.c:2981
#18 0x00007ffff3ab0fc3 in IA__g_signal_emit (instance=0x0, signal_id=32311584,
    detail=32280640) at /tmp/buildd/glib2.0-2.24.1/gobject/gsignal.c:3038
#19 0x00007ffff4142dde in ?? () from /usr/lib/libdbus-glib-1.so.2
#20 0x00007ffff3f002c6 in dbus_connection_dispatch () from /lib/libdbus-1.so.3
#21 0x00007ffff4139545 in ?? () from /usr/lib/libdbus-glib-1.so.2
#22 0x00007ffff33e26c2 in g_main_dispatch (context=0x84bb00)
    at /tmp/buildd/glib2.0-2.24.1/glib/gmain.c:1960
#23 IA__g_main_context_dispatch (context=0x84bb00)
    at /tmp/buildd/glib2.0-2.24.1/glib/gmain.c:2513
#24 0x00007ffff33e6538 in g_main_context_iterate (context=0x84bb00,
    block=<value optimized out>, dispatch=<value optimized out>,
    self=<value optimized out>) at /tmp/buildd/glib2.0-2.24.1/glib/gmain.c:2591
#25 0x00007ffff33e6a45 in IA__g_main_loop_run (loop=0xb68cc0)
    at /tmp/buildd/glib2.0-2.24.1/glib/gmain.c:2799
#26 0x00007ffff6f40647 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#27 0x0000000000403ea8 in main (argc=1, argv=0x7fffffffe828) at main.c:333
(gdb)

#589248#20
Date:
2010-07-16 08:32:58 UTC
From:
To:
Le vendredi 16 juillet 2010 à 20:12 +1200, Lars Wirzenius a écrit :

It is.

Are you using the replaygain plugin?

If so, does the following patch fix the bug for you?
http://git.gnome.org/browse/rhythmbox/commit/?id=22f43cbc01792ecce0ed002ca86ba71c848604cc

Thanks,

#589248#25
Date:
2010-07-16 08:49:33 UTC
From:
To:
I am. That and the status icon plugin are my only enabled plugins. If I
disabled the replaygain one, the crash goes away.

Unfortunately, it is not possible for me to compile rhythmbox right now.
I will try to come back to this at Debconf.

#589248#30
Date:
2010-07-16 08:55:56 UTC
From:
To:
severity 583770 important
forcemerge 586770 589248
thanks

Le vendredi 16 juillet 2010 à 20:49 +1200, Lars Wirzenius a écrit :

Since it’s a patch to the Python code, you don’t need to rebuild it, you
can do it in situ.

Cheers,

#589248#37
Date:
2010-07-16 09:18:02 UTC
From:
To:
So it is. Tried that (after some difficulty from the fact that
copy-pasting from the browser did not result in a working diff;
downloaded the relevant file in toto instead), and re-tested. Enabled
the replaygain plugin, started playing, got a segfault. So I'm afraid
the patch does not fix things.

#589248#42
Date:
2010-07-16 14:35:34 UTC
From:
To:
I don't understand - this bug is long-since closed.

   Julian

#589248#47
Date:
2011-04-30 09:35:22 UTC
From:
To:
I can reproduce this bug in Rhythmbox 0.12.8-3 in Wheezy.
Seems this bug is the same of #536507 and #586770 affecting Rhythmbox
from version 0.12.1.

If you need some info (versioning of dependencies and such) tell me.

                           Andrea

#589248#52
Date:
2012-04-06 14:43:35 UTC
From:
To:
For what it's worth, this no longer happens to me on squeeze or wheezy,
and hasn't happened for a very long time. As far as I can see, the bug
is gone and the report can be closed, but I leave it to the package
maintainers to decide that (especially since the bug is merged).