[FFmpeg-devel] [PATCH 3/4] avformat/dvdvideodec: Only free allocated buffers

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Sat Mar 2 17:47:57 EET 2024


Andreas Rheinhardt:
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> ---
> How has this slipped through?

Answer: AVIOContext starts with an AVClass* that is unset when using
ffio_init_context(). Therefore the av_freep() leads to freeing of a NULL
pointer which does not segfault.

> Btw: This patchset is based upon code inspection, not on reading
> actual files.
> 
>  libavformat/dvdvideodec.c | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/libavformat/dvdvideodec.c b/libavformat/dvdvideodec.c
> index ef2d4e6df4..f2f23affb2 100644
> --- a/libavformat/dvdvideodec.c
> +++ b/libavformat/dvdvideodec.c
> @@ -1202,7 +1202,6 @@ static void dvdvideo_subdemux_close(AVFormatContext *s)
>      DVDVideoDemuxContext *c = s->priv_data;
>  
>      av_freep(&c->mpeg_pb.pub.buffer);
> -    av_freep(&c->mpeg_pb);
>      avformat_close_input(&c->mpeg_ctx);
>  }
>  



More information about the ffmpeg-devel mailing list