[FFmpeg-devel] [PATCH 2/4] avcodec/jpeg2000dec: Avoid using GetByteContext.buffer directly

Tomas Härdin git at haerdin.se
Mon Feb 19 16:00:35 EET 2024


lör 2024-02-17 klockan 21:05 +0100 skrev Andreas Rheinhardt:
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> ---
>  libavcodec/jpeg2000dec.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c
> index 3d18d48e7c..1afc6b1e2d 100644
> --- a/libavcodec/jpeg2000dec.c
> +++ b/libavcodec/jpeg2000dec.c
> @@ -886,8 +886,8 @@ static int get_ppm(Jpeg2000DecoderContext *s, int
> n)
>          return AVERROR(ENOMEM);
>      s->has_ppm = 1;
>      memset(&s->packed_headers_stream, 0, sizeof(s-
> >packed_headers_stream));
> -    bytestream_get_buffer(&s->g.buffer, s->packed_headers + s-
> >packed_headers_size,
> -                          n - 3);
> +    bytestream2_get_bufferu(&s->g, s->packed_headers + s-
> >packed_headers_size,
> +                            n - 3);
>      s->packed_headers_size += n - 3;
>  
>      return 0;
> @@ -921,10 +921,8 @@ static int get_ppt(Jpeg2000DecoderContext *s,
> int n)
>      } else
>          return AVERROR(ENOMEM);
>      memset(&tile->packed_headers_stream, 0, sizeof(tile-
> >packed_headers_stream));
> -    memcpy(tile->packed_headers + tile->packed_headers_size,
> -           s->g.buffer, n - 3);
> +    bytestream2_get_bufferu(&s->g, tile->packed_headers + tile-
> >packed_headers_size, n - 3);
>      tile->packed_headers_size += n - 3;
> -    bytestream2_skip(&s->g, n - 3);

Looks OK. bytestream2_get_bufferu() seems to do the skipping for us.

/Tomas


More information about the ffmpeg-devel mailing list