infinite loop in taglib?

Ben bench at
Fri Aug 25 07:04:18 CEST 2006

I'm having a problem with taglib on a corrupt mp3. When I call  
taglib_file_new() on the file, my program goes into an infinite loop  
with this stack trace:

#0  0x000000383d9cc3c0 in __lseek_nocancel () from /lib64/
#1  0x000000383d968095 in _IO_new_file_seekoff () from /lib64/
#2  0x000000383d965282 in fseek () from /lib64/
#3  0x00002aaaaad197d7 in TagLib::File::seek () from /usr/lib64/
#4  0x00002aaaaacf9724 in TagLib::MPEG::File::nextFrameOffset ()  
from /usr/lib64/
#5  0x00002aaaaacfa1a2 in TagLib::MPEG::Properties::read () from /usr/ 
#6  0x00002aaaaacf9092 in TagLib::MPEG::File::read () from /usr/lib64/
#7  0x00002aaaaacf7b61 in TagLib::FileRef::create () from /usr/lib64/

Has anybody else seen anything like this? I'm not expecting good  
results on a bad file, but I'm not expecting infinite loops, either.

More information about the taglib-devel mailing list