From 82f19afefe4f28db0e2eefbc2d06eee0def74a53 Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Mon, 29 Nov 2010 16:38:12 +0000 Subject: [PATCH] Partially revert "Simplify code by using av_metadata_set2()." This reverts snprintf->av_d2str part of r20840. With it, track number is exported as a float, which is not desirable. Originally committed as revision 25845 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/id3v1.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/libavformat/id3v1.c b/libavformat/id3v1.c index c72fca49cb..481db9735e 100644 --- a/libavformat/id3v1.c +++ b/libavformat/id3v1.c @@ -21,7 +21,6 @@ #include "id3v1.h" #include "libavcodec/avcodec.h" -#include "libavutil/avstring.h" const char * const ff_id3v1_genre_str[ID3v1_GENRE_MAX + 1] = { [0] = "Blues", @@ -202,6 +201,7 @@ static void get_string(AVFormatContext *s, const char *key, */ static int parse_tag(AVFormatContext *s, const uint8_t *buf) { + char str[5]; int genre; if (!(buf[0] == 'T' && @@ -213,8 +213,10 @@ static int parse_tag(AVFormatContext *s, const uint8_t *buf) get_string(s, "album", buf + 63, 30); get_string(s, "date", buf + 93, 4); get_string(s, "comment", buf + 97, 30); - if (buf[125] == 0 && buf[126] != 0) - av_metadata_set2(&s->metadata, "track", av_d2str(buf[126]), AV_METADATA_DONT_STRDUP_VAL); + if (buf[125] == 0 && buf[126] != 0) { + snprintf(str, sizeof(str), "%d", buf[126]); + av_metadata_set2(&s->metadata, "track", str, 0); + } genre = buf[127]; if (genre <= ID3v1_GENRE_MAX) av_metadata_set2(&s->metadata, "genre", ff_id3v1_genre_str[genre], 0);