On 06.01.2016 19:56, Andreas Cadhalpun wrote:
> asf_read_payload can unset eof_reached, so check it also before calling
> that function.
> 
> This fixes infinite loops.
> 
> Signed-off-by: Andreas Cadhalpun <andreas.cadhal...@googlemail.com>
> ---
>  libavformat/asfdec_o.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/libavformat/asfdec_o.c b/libavformat/asfdec_o.c
> index 4a3c815..ca4a066 100644
> --- a/libavformat/asfdec_o.c
> +++ b/libavformat/asfdec_o.c
> @@ -1434,6 +1434,8 @@ static int asf_read_packet(AVFormatContext *s, AVPacket 
> *pkt)
>      while (!pb->eof_reached) {
>          if (asf->state == PARSE_PACKET_HEADER) {
>              asf_read_packet_header(s);
> +            if (pb->eof_reached)
> +                break;
>              if (!asf->nb_mult_left)
>                  asf->state = READ_SINGLE;
>              else
> 

Pushed now, as Alexandra (the author over at Libav) seems fine with it.

Best regards,
Andreas
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to