[SCM] libav/experimental: id3v2: convert metadata after all the tags were read

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:22:17 UTC 2013


The following commit has been merged in the experimental branch:
commit f7fcd6a2549b58a69c02622503676a8b142e4c43
Author: Anton Khirnov <anton at khirnov.net>
Date:   Thu Jan 20 08:35:59 2011 +0000

    id3v2: convert metadata after all the tags were read
    
    Signed-off-by: Mans Rullgard <mans at mansr.com>

diff --git a/libavformat/id3v2.c b/libavformat/id3v2.c
index 9cfff27..4da7ec6 100644
--- a/libavformat/id3v2.c
+++ b/libavformat/id3v2.c
@@ -231,7 +231,6 @@ static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t
         /* Skip to end of tag */
         url_fseek(s->pb, next, SEEK_SET);
     }
-    ff_metadata_conv(&s->metadata, NULL, ff_id3v2_metadata_conv);
 
     if (len > 0) {
         /* Skip padding */
@@ -261,7 +260,7 @@ void ff_id3v2_read(AVFormatContext *s, const char *magic)
         off = url_ftell(s->pb);
         ret = get_buffer(s->pb, buf, ID3v2_HEADER_SIZE);
         if (ret != ID3v2_HEADER_SIZE)
-            return;
+            break;
             found_header = ff_id3v2_match(buf, magic);
             if (found_header) {
             /* parse ID3v2 header */
@@ -274,6 +273,7 @@ void ff_id3v2_read(AVFormatContext *s, const char *magic)
             url_fseek(s->pb, off, SEEK_SET);
         }
     } while (found_header);
+    ff_metadata_conv(&s->metadata, NULL, ff_id3v2_metadata_conv);
 }
 
 const AVMetadataConv ff_id3v2_metadata_conv[] = {

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list