GNOME Bugzilla – Bug 330239
Crash playing any song from a particular album over rhythmbox DAAP
Last modified: 2006-03-22 13:02:53 UTC
Steps to reproduce: 1. rhythmbox 2. open up DAAP server 3. click any song on a particular album Stack trace: Backtrace was generated from '/home/alex/bin/rhythmbox' Using host libthread_db library "/lib/libthread_db.so.1". [Thread debugging using libthread_db enabled] [New Thread -1208883520 (LWP 28309)] [New Thread -1233171536 (LWP 28340)] [New Thread -1243661392 (LWP 28316)] [New Thread -1221870672 (LWP 28311)] [New Thread -1211380816 (LWP 28310)] 0x007d6402 in ?? ()
+ Trace 65972
Thread 2 (Thread -1233171536 (LWP 28340))
Other information: Note that this doesn't happen on other many (in fact, most) songs, hence probably a plugin issue. Will try and attach file (or subset).
OK, got file from server and it plays fine locally, so maybe a rhythmbox bug, after all, switching.
Not sure if this is important, but it maybe. That file has an included picture. Maybe that's a problem with the byte streaming over DAAP? $ id3info 01\ Stealth\ Overture.mp3 *** Tag information for 01 Stealth Overture.mp3 === COMM (Comments): (MusicMatch_Tempo)[eng]: None === TYER (Year): 1997 === TLEN (Length): 60000 === APIC (Attached picture): ()[, 0]: image/jpg, 6401 bytes === TIT2 (Title/songname/content description): Stealth Overture === TRCK (Track number/Position in set): 01 === TPE1 (Lead performer(s)/Soloist(s)): Apollo 440 === TALB (Album/Movie/Show title): Electro Glide in Blue === TCON (Content type): Electronica/Dance === TIT1 (Content group description): Alex *** mp3 info MPEG1/layer III Bitrate: 160KBps Frequency: 44KHz
Using the transferring patch from bug #322268, I managed to copy the file via DAAP to the library, it plays fine after transferring, but still crashes if attempting to stream from server. A diff between the transferred .mp3 file (using the transfer patch over DAAP) and the .mp3 file copied directly via SSH shows no differences at all.
Debugging session on IRC suggests this is probably a gst problem after all. Moving bug.
Stacktrace against gstreamer-plugins-good CVS: ** (rhythmbox:22127): CRITICAL **: gst_type_find_helper_for_buffer: assertion `buf != NULL' failed Program received signal SIGSEGV, Segmentation fault.
+ Trace 67129
Thread NaN (LWP 22187)
Created attachment 61753 [details] [review] try this patch on for size. Fixesattempts to typefind on too-small buffers
(In reply to comment #6) > Created an attachment (id=61753) [edit] > try this patch on for size. Fixesattempts to typefind on too-small buffers Works for me. Thanks!
Fixed in CVS: * gst/apetag/gsttagdemux.c: (gst_tag_demux_chain): * gst/id3demux/gstid3demux.c: (gst_id3demux_chain): Don't attempt typefinding on too-short buffers that have been completely trimmed away. (Fixes #330239) * gst/id3demux/id3tags.c: (id3demux_read_id3v2_tag): Improve the debug output