[FFmpeg-devel] [PATCH 1/3] lavf/vividas: check avformat_new_stream() return
Andreas Rheinhardt
andreas.rheinhardt at gmail.com
Thu Nov 28 16:08:00 EET 2019
Jun Zhao:
> From: Jun Zhao <barryjzhao at tencent.com>
>
> check avformat_new_stream() return.
>
> Signed-off-by: Jun Zhao <barryjzhao at tencent.com>
> ---
> libavformat/vividas.c | 4 ++++
> 1 files changed, 4 insertions(+), 0 deletions(-)
>
> diff --git a/libavformat/vividas.c b/libavformat/vividas.c
> index f20af3d..16642c0 100644
> --- a/libavformat/vividas.c
> +++ b/libavformat/vividas.c
> @@ -319,6 +319,8 @@ static int track_header(VividasDemuxContext *viv, AVFormatContext *s, uint8_t *
>
> for (i = 0; i < num_video; i++) {
> AVStream *st = avformat_new_stream(s, NULL);
> + if (!st)
> + return AVERROR(ENOMEM);
>
> st->id = i;
>
> @@ -352,6 +354,8 @@ static int track_header(VividasDemuxContext *viv, AVFormatContext *s, uint8_t *
> for(i=0;i<viv->num_audio;i++) {
> int q;
> AVStream *st = avformat_new_stream(s, NULL);
> + if (!st)
> + return AVERROR(ENOMEM);
>
> st->id = num_video + i;
>
>
Actually, the AVIOContext pb leaks when these errors happen. But don't
bother updating your patch, because pb should actually not be
allocated at all: I'll send a patch using ffio_init_context soon.
- Andreas
More information about the ffmpeg-devel
mailing list