1) fix bug, id3_tag_parse does may return NULL if there's an error in decoding the id3v2 tag
2) in the same place, delete the id3Tag (fixes a memory leak) 3) version: 0.12.0 -> 0.11.4 git-svn-id: https://svn.musicpd.org/mpd/trunk@1903 09075e82-0dd4-0310-85a5-a0d7c8717e4f
This commit is contained in:
parent
4d4ef9d987
commit
cdb6372049
|
@ -2,7 +2,7 @@ dnl AC_INIT(src/main.c)
|
|||
dnl AM_INIT_AUTOMAKE(mpd, 0.10.0)
|
||||
|
||||
AC_PREREQ(2.52)
|
||||
AC_INIT(mpd, 0.12.0, shank@mercury.chem.pitt.edu)
|
||||
AC_INIT(mpd, 0.11.4, shank@mercury.chem.pitt.edu)
|
||||
AM_INIT_AUTOMAKE($PACKAGE_NAME, $PACKAGE_VERSION)
|
||||
|
||||
dnl MAD wants this stuff
|
||||
|
|
|
@ -246,7 +246,10 @@ static MpdTag * mp3_parseId3Tag(mp3DecodeData * data, signed long tagsize) {
|
|||
|
||||
id3Tag = id3_tag_parse(id3_data, tagsize);
|
||||
|
||||
ret = parseId3Tag(id3Tag);
|
||||
if(id3Tag) {
|
||||
ret = parseId3Tag(id3Tag);
|
||||
id3_tag_delete(id3Tag);
|
||||
}
|
||||
|
||||
fail:
|
||||
if(allocated) free(allocated);
|
||||
|
@ -272,7 +275,8 @@ int decodeNextFrameHeader(mp3DecodeData * data, MpdTag ** tag) {
|
|||
|
||||
if(tagsize>0) {
|
||||
if(tag && !(*tag)) {
|
||||
*tag =mp3_parseId3Tag(data, tagsize);
|
||||
*tag = mp3_parseId3Tag(data, tagsize);
|
||||
|
||||
}
|
||||
else {
|
||||
mad_stream_skip(&(data->stream),
|
||||
|
|
Loading…
Reference in New Issue