[FFmpeg-devel] [PATCH v2] avformat/mov: don't reallocate extradata when converting dvdsub palette
Marth64
marth64 at proxyid.net
Wed Dec 11 02:04:25 EET 2024
After introduction of ff_dvdclut_palette_extradata_cat() to convert
DVD subtitle palettes from YUV to RGB, a leak is introduced because
of the call to ff_alloc_extradata(). This is not necessary, instead
we should free the extradata because ff_bprint_to_codecpar_extradata()
will finalize the bprint'ed string to the codecpar and set the length.
Fixes leak introduced in 3b0e6c0eccd7d61eb089370fc5f2196c2b30336f.
v2 also sets the extradata_size to 0 after it is freed.
Signed-off-by: Marth64 <marth64 at proxyid.net>
---
libavformat/mov.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/libavformat/mov.c b/libavformat/mov.c
index 3820983a5d..26f1bf7e1b 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -10602,9 +10602,8 @@ static int mov_read_header(AVFormatContext *s)
if (err < 0)
return err;
- err = ff_alloc_extradata(st->codecpar, FF_DVDCLUT_EXTRADATA_SIZE);
- if (err < 0)
- return err;
+ av_freep(&st->codecpar->extradata);
+ st->codecpar->extradata_size = 0;
err = ff_dvdclut_palette_extradata_cat(dvdsub_clut, FF_DVDCLUT_CLUT_SIZE,
st->codecpar);
--
2.34.1
More information about the ffmpeg-devel
mailing list