Opened 15 years ago

Closed 15 years ago

#21347 closed defect (fixed)

id3v2 crashes on OS X 10.6 Snow Leopard due to id3lib issue

Reported by: macports@… Owned by: mf2k (Frank Schima)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: id3lib

Description

All my mp3 files have both id3v1 and id3v2 tags. It looks like id3v2 crashes on the v2 tag.

$ /opt/local/bin/id3v2 -l /tmp/foo.mp3 
id3v1 tag info for /tmp/foo.mp3:
Title  : Runnin'                         Artist: Ledisi                        
Album  : Turn Me Loose                   Year: 2009, Genre: Unknown (255)
Comment:                                 Track: 1
Abort trap
$ otool -L /opt/local/bin/id3v2
/opt/local/bin/id3v2:
	/opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
	/opt/local/lib/libid3-3.8.3.dylib (compatibility version 4.0.0, current version 4.0.0)
	/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 123.0.0)

Attachments (3)

id3v2_2009-09-13-114918_schematix.crash (3.1 KB) - added by tobypeterson 15 years ago.
id3v2-i368-crash-log.txt (3.9 KB) - added by macports@… 15 years ago.
i368 crash log
id3lib-vbr-overflow.patch (504 bytes) - added by macports@… 15 years ago.
Patch to prevent overflow with certain vbr files

Download all attachments as: .zip

Change History (17)

comment:1 Changed 15 years ago by macports@…

My id3v2 binary is compiled as x86_64 (universal did not work).

$ file /opt/local/bin/id3v2
/opt/local/bin/id3v2: Mach-O 64-bit executable x86_64

comment:2 Changed 15 years ago by tobypeterson

Owner: changed from macports-tickets@… to brent@…
Version: 1.8.0

comment:3 Changed 15 years ago by tobypeterson

Please attach the crash log.

Changed 15 years ago by tobypeterson

comment:4 Changed 15 years ago by tobypeterson

I was able to repro - see attachment. Probably a memory smasher (64-bit related, I'm sure).

Changed 15 years ago by macports@…

Attachment: id3v2-i368-crash-log.txt added

i368 crash log

comment:5 Changed 15 years ago by macports@…

Unfortunately, it also crashed when id3lib and id3v2 are build as i386.

Changed 15 years ago by macports@…

Attachment: id3lib-vbr-overflow.patch added

Patch to prevent overflow with certain vbr files

comment:6 Changed 15 years ago by macports@…

It turns out this is a known bug that has been fixed in the CVS version: https://sourceforge.net/tracker/index.php?func=detail&aid=697951&group_id=979&atid=100979 http://id3lib.cvs.sourceforge.net/viewvc/id3lib/id3lib-stable/src/mp3_parse.cpp?view=markup

I've attached the patch to fix the issue. It looks like 10.6 added stack frame protection to OS X which caused this issue to act up.

Port needs to be changed to id3lib.

comment:7 Changed 15 years ago by cyrille.legrand@…

This issue does not seem to be fixed as of today. The exact same problem arises on my machine. The patch seems pretty simple in itself, but I have no clue on how to patch a port, or even how to compile one myself — any clue ?

comment:8 Changed 15 years ago by macports@…

You can first configure the id3lib port with "port configure id3lib". Then find mp3_parse.cpp in /opt/local and patch it. Then finish installing the patched port with "port install id3lib".

comment:9 in reply to:  8 Changed 15 years ago by cyrille.legrand@…

Replying to macports@…:

You can first configure the id3lib port with "port configure id3lib". Then find mp3_parse.cpp in /opt/local and patch it. Then finish installing the patched port with "port install id3lib".

That was as simple as that. Many thanks, it now works perfectly.

comment:10 Changed 15 years ago by brent@…

So, this is not an id3v2 bug -- it should be changed to the id3lib port and/or closed based on the reporter's comment above. Thanks.

comment:11 Changed 15 years ago by mf2k (Frank Schima)

Port: id3lib added; id3v2 removed
Summary: id3v2 crashes on OS X 10.6 Snow Leopardid3v2 crashes on OS X 10.6 Snow Leopard due to id3lib issue

comment:12 Changed 15 years ago by me@…

I just got hit by this issue and applying the patch solved it for me as well. It's a shame this isn't in the ports tree yet, it's been known about (with a fix) for 6 months.

comment:13 Changed 15 years ago by mf2k (Frank Schima)

Owner: changed from brent@… to macsforever2000@…
Status: newassigned

comment:14 Changed 15 years ago by mf2k (Frank Schima)

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.