[libav-devel] [PATCH 1/3] movenc: Check that frag_info entries exist in mov_write_sidx_tag

Luca Barbato lu_zero at gentoo.org
Mon Aug 10 01:36:21 CEST 2015


On 09/08/15 21:45, Martin Storsjö wrote:
> This fixes crashes with pathological cases when trying to write
> a sidx index (via the -movflags faststart option, in combination
> with fragmenting options), when no fragments actually have been
> written. (This is possible if the empty_moov flag isn't used,
> so that all actual packet data is written in the moov/mdat pair,
> and no moof/mdat pairs have been written.)
> 
> In these pathological cases, no sidx should be written at all.
> ---
>  libavformat/movenc.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/libavformat/movenc.c b/libavformat/movenc.c
> index 158dfa8..a19c64b 100644
> --- a/libavformat/movenc.c
> +++ b/libavformat/movenc.c
> @@ -2751,6 +2751,8 @@ static int mov_write_sidx_tag(AVIOContext *pb,
>          }
>      } else {
>          entries = track->nb_frag_info;
> +        if (entries <= 0)
> +            return 0;
>          presentation_time = track->frag_info[0].time;
>      }
>  
> 

Ok, is stable affected?


More information about the libav-devel mailing list