gstid3tag: Don't extract a track number unless present.
authorMichael Smith <msmith@songbirdnest.com>
Wed, 20 May 2009 01:10:55 +0000 (18:10 -0700)
committerMichael Smith <msmith@songbirdnest.com>
Wed, 20 May 2009 01:12:18 +0000 (18:12 -0700)
In ID3v1, a track number is present only if byte 125 is null AND
byte 126 is non-null. If the track number is not present, don't add
a track number tag with value 0.

gst-libs/gst/tag/gstid3tag.c

index 2ab433f..f50988e 100644 (file)
@@ -382,7 +382,7 @@ gst_tag_list_new_from_id3v1 (const guint8 * data)
     gst_tag_list_add (list, GST_TAG_MERGE_REPLACE, GST_TAG_DATE, date, NULL);
     g_date_free (date);
   }
-  if (data[125] == 0) {
+  if (data[125] == 0 && data[126] != 0) {
     gst_tag_extract_id3v1_string (list, GST_TAG_COMMENT, (gchar *) & data[97],
         28);
     gst_tag_list_add (list, GST_TAG_MERGE_REPLACE, GST_TAG_TRACK_NUMBER,