From 27c6c925344e00c1a72ba8bb2b5cdd32cb1a2655 Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Thu, 21 Nov 2019 07:17:19 +0100 Subject: avformat/av1: Fix leak of dynamic buffer in case of parsing failure Signed-off-by: Andreas Rheinhardt Signed-off-by: James Almer --- libavformat/av1.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'libavformat/av1.c') diff --git a/libavformat/av1.c b/libavformat/av1.c index b36c5e44ba..03669dfd2a 100644 --- a/libavformat/av1.c +++ b/libavformat/av1.c @@ -26,6 +26,7 @@ #include "libavcodec/put_bits.h" #include "av1.h" #include "avio.h" +#include "avio_internal.h" int ff_av1_filter_obus(AVIOContext *pb, const uint8_t *buf, int size) { @@ -67,8 +68,10 @@ int ff_av1_filter_obus_buf(const uint8_t *buf, uint8_t **out, int *size) return ret; ret = ff_av1_filter_obus(pb, buf, *size); - if (ret < 0) + if (ret < 0) { + ffio_free_dyn_buf(&pb); return ret; + } av_freep(out); *size = avio_close_dyn_buf(pb, out); -- cgit v1.2.3