[FFmpeg-devel] [PATCH 1/2] avcodec/vp5/6/8: use vpX_rac_is_end()

Peter Ross pross at xvid.org
Wed Aug 21 12:41:00 EEST 2019


On Tue, Aug 20, 2019 at 11:51:48AM +0200, Michael Niedermayer wrote:
> Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> ---
>  libavcodec/vp5.c | 2 +-
>  libavcodec/vp6.c | 2 +-
>  libavcodec/vp8.c | 8 ++++----
>  3 files changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/libavcodec/vp5.c b/libavcodec/vp5.c
> index 49988b8b76..0fca282918 100644
> --- a/libavcodec/vp5.c
> +++ b/libavcodec/vp5.c
> @@ -183,7 +183,7 @@ static int vp5_parse_coeff(VP56Context *s)
>      int b, i, cg, idx, ctx, ctx_last;
>      int pt = 0;    /* plane type (0 for Y, 1 for U or V) */
>  
> -    if (c->end <= c->buffer && c->bits >= 0) {
> +    if (vpX_rac_is_end(c)) {
>          av_log(s->avctx, AV_LOG_ERROR, "End of AC stream reached in vp5_parse_coeff\n");
>          return AVERROR_INVALIDDATA;
>      }
> diff --git a/libavcodec/vp6.c b/libavcodec/vp6.c
> index 977fcb7076..e5dec19f50 100644
> --- a/libavcodec/vp6.c
> +++ b/libavcodec/vp6.c
> @@ -473,7 +473,7 @@ static int vp6_parse_coeff(VP56Context *s)
>      int b, i, cg, idx, ctx;
>      int pt = 0;    /* plane type (0 for Y, 1 for U or V) */
>  
> -    if (c->end <= c->buffer && c->bits >= 0) {
> +    if (vpX_rac_is_end(c)) {
>          av_log(s->avctx, AV_LOG_ERROR, "End of AC stream reached in vp6_parse_coeff\n");
>          return AVERROR_INVALIDDATA;
>      }
> diff --git a/libavcodec/vp8.c b/libavcodec/vp8.c
> index efc62aabaf..eb51d1f3c9 100644
> --- a/libavcodec/vp8.c
> +++ b/libavcodec/vp8.c
> @@ -658,7 +658,7 @@ static int vp7_decode_frame_header(VP8Context *s, const uint8_t *buf, int buf_si
>              s->fade_present = vp8_rac_get(c);
>      }
>  
> -    if (c->end <= c->buffer && c->bits >= 0)
> +    if (vpX_rac_is_end(c))
>          return AVERROR_INVALIDDATA;
>      /* E. Fading information for previous frame */
>      if (s->fade_present && vp8_rac_get(c)) {
> @@ -693,7 +693,7 @@ static int vp7_decode_frame_header(VP8Context *s, const uint8_t *buf, int buf_si
>          vp78_update_pred16x16_pred8x8_mvc_probabilities(s, VP7_MVC_SIZE);
>      }
>  
> -    if (c->end <= c->buffer && c->bits >= 0)
> +    if (vpX_rac_is_end(c))
>          return AVERROR_INVALIDDATA;
>  
>      if ((ret = vp7_fade_frame(s, alpha, beta)) < 0)
> @@ -2375,7 +2375,7 @@ static av_always_inline int decode_mb_row_no_filter(AVCodecContext *avctx, void
>          curframe->tf.f->data[2] +  8 * mb_y * s->uvlinesize
>      };
>  
> -    if (c->end <= c->buffer && c->bits >= 0)
> +    if (vpX_rac_is_end(c))
>           return AVERROR_INVALIDDATA;
>  
>      if (mb_y == 0)
> @@ -2406,7 +2406,7 @@ static av_always_inline int decode_mb_row_no_filter(AVCodecContext *avctx, void
>      td->mv_bounds.mv_max.x = ((s->mb_width - 1) << 6) + MARGIN;
>  
>      for (mb_x = 0; mb_x < s->mb_width; mb_x++, mb_xy++, mb++) {
> -        if (c->end <= c->buffer && c->bits >= 0)
> +        if (vpX_rac_is_end(c))
>              return AVERROR_INVALIDDATA;
>          // Wait for previous thread to read mb_x+2, and reach mb_y-1.
>          if (prev_td != td) {

approve.

-- Peter
(A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20190821/84d9e7d2/attachment.sig>


More information about the ffmpeg-devel mailing list