diff --git a/ChangeLog b/ChangeLog index ed1b87aee3..b243b19bd9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2006-05-28 Tim-Philipp Müller + + * gst/id3demux/id3v2frames.c: (id3v2_tag_to_taglist): + A track/volume number or count of 0 does not make sense, + just ignore it along with negative numbers (a tag might + only contain a track count without a track number). + 2006-05-27 Edward Hervey * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_init), diff --git a/gst/id3demux/id3v2frames.c b/gst/id3demux/id3v2frames.c index f8c1453666..8c20619f1a 100644 --- a/gst/id3demux/id3v2frames.c +++ b/gst/id3demux/id3v2frames.c @@ -453,8 +453,8 @@ id3v2_tag_to_taglist (ID3TagsWorking * work, const gchar * tag_name, gint current, total; if (sscanf (tag_str, "%d/%d", ¤t, &total) == 2) { - if (total < 0) { - GST_WARNING ("Ignoring negative value for total %d in tag %s", + if (total <= 0) { + GST_WARNING ("Ignoring invalid value for total %d in tag %s", total, tag_name); } else { if (strcmp (tag_name, GST_TAG_TRACK_NUMBER) == 0) { @@ -472,9 +472,9 @@ id3v2_tag_to_taglist (ID3TagsWorking * work, const gchar * tag_name, break; } - if (current < 0) - GST_WARNING ("Ignoring negative value %d in tag %s", current, tag_name); - else { + if (current <= 0) { + GST_WARNING ("Ignoring invalid value %d in tag %s", current, tag_name); + } else { gst_tag_list_add (tag_list, GST_TAG_MERGE_APPEND, tag_name, current, NULL); }