mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-24 13:56:33 +02:00
avcodec/mjpegenc: Fix segfault when freeing incomplete context
When allocating the MJpegContext fails (or if the dimensions run afoul of the 65500x65500 limit), an attempt to free a subbuffer of said context leads to a segfault in ff_mjpeg_encode_close(). Seems to be a regression since 467d9e27e0cb2bf74f41dc832f2f8d191ba58ec9. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> (cherry picked from commit 84ac35ecb8a53bf313b468b5a9f1b0617f2a3de2)
This commit is contained in:
parent
28dd12c9b7
commit
5e2e8e1b9e
@ -312,8 +312,10 @@ av_cold int ff_mjpeg_encode_init(MpegEncContext *s)
|
||||
|
||||
av_cold void ff_mjpeg_encode_close(MpegEncContext *s)
|
||||
{
|
||||
av_freep(&s->mjpeg_ctx->huff_buffer);
|
||||
av_freep(&s->mjpeg_ctx);
|
||||
if (s->mjpeg_ctx) {
|
||||
av_freep(&s->mjpeg_ctx->huff_buffer);
|
||||
av_freep(&s->mjpeg_ctx);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user