summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavformat/apetag.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavformat/apetag.c b/libavformat/apetag.c
index 378ae10ad4..68c987e7e6 100644
--- a/libavformat/apetag.c
+++ b/libavformat/apetag.c
@@ -75,8 +75,10 @@ static int ape_tag_read_field(AVFormatContext *s)
if (!value)
return AVERROR(ENOMEM);
c = avio_read(pb, value, size);
- if (c < 0)
+ if (c < 0) {
+ av_free(value);
return c;
+ }
value[c] = 0;
av_dict_set(&s->metadata, key, value, AV_DICT_DONT_STRDUP_VAL);
}