GNOME Bugzilla – Bug 378436
[oggdemux] rhythmbox crash on fast clicking on rating in automatic playlist
Last modified: 2007-01-27 17:07:28 UTC
That bug has been described on https://launchpad.net/distros/ubuntu/+source/rhythmbox/+bug/71253 "Using a automatic playlist with only unrated (rating=0) songs, rhythmbox will crash if you click on the songs rating quickly and repeatedly (songs will be removed from the list if their rating goes up). This is probably a race condition problem. To reproduce the bug: 1) Make sure you have songs with zero rating (no stars) 2) Create an automatic playlist matching only zero rated songs (no stars). 3) Don't enable shuffle 4) Start clicking on the rating of the playing song and keep clicking until it crashes (about 10 to 20 songs on my machine). Clicking will bring up the song below it and remove the song from the list. If you click fast enough rythmbox will crash. Misc info: rythmbox 0.9.6 gstreamer 0.10 Ogg Vorbis music files ... http://librarian.launchpad.net/5063244/_usr_bin_rhythmbox.1000.crash Crash report file Here is a complete report from the "Problem report for" help program. Due to the ease with which this problem is recreated I havn't taken the time to install the debugsysms for the used program. And the problem can simply be avoided by clicking more slowely or simply turning on shuffle so it is impossible to click on song that just started playing. Hopefully, this report does add something however." Debug backtrace:
+ Trace 88740
I think I get the same with gstreamer0.10-plugins-base (0.10.7) and totem. If I go fast through my playlist of ogg/theora files totem crashes with this backtrace: Program received signal SIGSEGV, Segmentation fault.
+ Trace 92399
Thread 1099184480 (LWP 8644)
Does this commit to CVS fix it? * ext/ogg/gstoggdemux.c: (gst_ogg_demux_submit_buffer), (gst_ogg_demux_get_data), (gst_ogg_demux_get_next_page), (gst_ogg_demux_get_prev_page), (gst_ogg_demux_do_seek), (gst_ogg_demux_perform_seek), (gst_ogg_demux_bisect_forward_serialno), (gst_ogg_demux_read_chain), (gst_ogg_demux_read_end_chain), (gst_ogg_demux_find_chains), (gst_ogg_demux_handle_page), (gst_ogg_demux_chain), (gst_ogg_demux_combine_flows), (gst_ogg_demux_loop_reverse), (gst_ogg_demux_loop): * ext/ogg/gstoggdemux.h: Properly propagate streaming errors when we are scanning the file for chains so that we don't crash when shut down. Might fix some crashers when quickly switching oggs in RB such as #332503 and #378436.
Fixes it for me (could reproduce the same issue in totem by putting lots of .ogg files into the playlist and keeping the 'n' key pressed), although I still get the occasional dead-lock from bug #333112. Please re-open this bug if it's still an issue in rhythmbox.