From 4764daf3c29d22c2b21473612c1acfc55b1c4775 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Fri, 3 Feb 2012 09:08:06 +0100 Subject: [PATCH] decoder/ffmpeg: pass tag_type and name to _copy_metadata() Allow using this function without the ffmpeg_tag_map struct. --- src/decoder/ffmpeg_decoder_plugin.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/decoder/ffmpeg_decoder_plugin.c b/src/decoder/ffmpeg_decoder_plugin.c index 947241599..0340e9506 100644 --- a/src/decoder/ffmpeg_decoder_plugin.c +++ b/src/decoder/ffmpeg_decoder_plugin.c @@ -614,20 +614,21 @@ static const ffmpeg_tag_map ffmpeg_tag_maps[] = { #endif static void -ffmpeg_copy_metadata(struct tag *tag, AVDictionary *m, - const ffmpeg_tag_map tag_map) +ffmpeg_copy_metadata(struct tag *tag, enum tag_type type, + AVDictionary *m, const char *name) { AVDictionaryEntry *mt = NULL; - while ((mt = av_dict_get(m, tag_map.name, mt, 0)) != NULL) - tag_add_item(tag, tag_map.type, mt->value); + while ((mt = av_dict_get(m, name, mt, 0)) != NULL) + tag_add_item(tag, type, mt->value); } static void ffmpeg_copy_dictionary(struct tag *tag, AVDictionary *dict) { for (unsigned i = 0; i < G_N_ELEMENTS(ffmpeg_tag_maps); i++) - ffmpeg_copy_metadata(tag, dict, ffmpeg_tag_maps[i]); + ffmpeg_copy_metadata(tag, ffmpeg_tag_maps[i].type, + dict, ffmpeg_tag_maps[i].name); } #endif