On Fri, Nov 15, 2013 at 10:13 PM, Anton Khirnov <[email protected]> wrote:
> Happens on a B-frame when neither low_delay nor last_picture_ptr is set
> (probably corrupted streams only).
>
> Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
> ---
>  libavcodec/vc1dec.c |    3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c
> index 231f425..507574c 100644
> --- a/libavcodec/vc1dec.c
> +++ b/libavcodec/vc1dec.c
> @@ -6078,12 +6078,11 @@ image:
>              if ((ret = av_frame_ref(pict, &s->current_picture_ptr->f)) < 0)
>                  goto err;
>              ff_print_debug_info(s, s->current_picture_ptr);
> +            *got_frame = 1;
>          } else if (s->last_picture_ptr != NULL) {
>              if ((ret = av_frame_ref(pict, &s->last_picture_ptr->f)) < 0)
>                  goto err;
>              ff_print_debug_info(s, s->last_picture_ptr);
> -        }
> -        if (s->last_picture_ptr || s->low_delay) {
>              *got_frame = 1;
>          }
>      }

I guess ok.
Vittorio
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to