From 75aded8328e35c9391e25a1c857eb6e3b801a8d8 Mon Sep 17 00:00:00 2001
From: Anton Khirnov <anton@khirnov.net>
Date: Thu, 20 Jan 2011 09:06:58 +0100
Subject: id3v2: don't overwrite existing tags

Apparently some broken taggers prepend a new ID3v2 tag leaving the
existing one intact. Our parser currently reads all tags and overwrites
existing values with supposedly outdated ones.

fixes issue2419

Signed-off-by: Mans Rullgard <mans@mansr.com>
---
 libavformat/id3v2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(limited to 'libavformat')

diff --git a/libavformat/id3v2.c b/libavformat/id3v2.c
index 4da7ec66d1..95ec0b05cb 100644
--- a/libavformat/id3v2.c
+++ b/libavformat/id3v2.c
@@ -132,7 +132,7 @@ static void read_ttag(AVFormatContext *s, ByteIOContext *pb, int taglen, const c
         val = dst;
 
     if (val)
-        av_metadata_set2(&s->metadata, key, val, 0);
+        av_metadata_set2(&s->metadata, key, val, AV_METADATA_DONT_OVERWRITE);
 }
 
 static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t flags)
-- 
cgit v1.2.3