From 3496cec43304ac040d6d05f9d500a6f93cc049e7 Mon Sep 17 00:00:00 2001
From: Vittorio Giovara <vittorio.giovara@gmail.com>
Date: Wed, 14 Oct 2015 11:33:18 +0200
Subject: [PATCH] msrle: Use AVFrame instead of AVPicture

Callers always use a frame and cast it to AVPicture, change
ff_msrle_decode() to accept an AVFrame directly instead.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
---
 libavcodec/aasc.c     | 2 +-
 libavcodec/bmp.c      | 2 +-
 libavcodec/msrle.c    | 2 +-
 libavcodec/msrledec.c | 6 +++---
 libavcodec/msrledec.h | 2 +-
 libavcodec/tscc.c     | 2 +-
 6 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/libavcodec/aasc.c b/libavcodec/aasc.c
index 462ee677861..9e703149647 100644
--- a/libavcodec/aasc.c
+++ b/libavcodec/aasc.c
@@ -85,7 +85,7 @@ static int aasc_decode_frame(AVCodecContext *avctx,
         break;
     case 1:
         bytestream2_init(&s->gb, buf, buf_size);
-        ff_msrle_decode(avctx, (AVPicture*)s->frame, 8, &s->gb);
+        ff_msrle_decode(avctx, s->frame, 8, &s->gb);
         break;
     default:
         av_log(avctx, AV_LOG_ERROR, "Unknown compression type %d\n", compr);
diff --git a/libavcodec/bmp.c b/libavcodec/bmp.c
index f545e784b8f..648fa68e1ff 100644
--- a/libavcodec/bmp.c
+++ b/libavcodec/bmp.c
@@ -264,7 +264,7 @@ static int bmp_decode_frame(AVCodecContext *avctx,
             p->linesize[0] = -p->linesize[0];
         }
         bytestream2_init(&gb, buf, dsize);
-        ff_msrle_decode(avctx, (AVPicture*)p, depth, &gb);
+        ff_msrle_decode(avctx, p, depth, &gb);
         if (height < 0) {
             p->data[0]    +=  p->linesize[0] * (avctx->height - 1);
             p->linesize[0] = -p->linesize[0];
diff --git a/libavcodec/msrle.c b/libavcodec/msrle.c
index a1adeba949d..e262f92c41b 100644
--- a/libavcodec/msrle.c
+++ b/libavcodec/msrle.c
@@ -126,7 +126,7 @@ static int msrle_decode_frame(AVCodecContext *avctx,
         }
     } else {
         bytestream2_init(&s->gb, buf, buf_size);
-        ff_msrle_decode(avctx, (AVPicture*)s->frame, avctx->bits_per_coded_sample, &s->gb);
+        ff_msrle_decode(avctx, s->frame, avctx->bits_per_coded_sample, &s->gb);
     }
 
     if ((ret = av_frame_ref(data, s->frame)) < 0)
diff --git a/libavcodec/msrledec.c b/libavcodec/msrledec.c
index 370d9bdfcec..f45179f26eb 100644
--- a/libavcodec/msrledec.c
+++ b/libavcodec/msrledec.c
@@ -30,7 +30,7 @@
 #include "avcodec.h"
 #include "msrledec.h"
 
-static int msrle_decode_pal4(AVCodecContext *avctx, AVPicture *pic,
+static int msrle_decode_pal4(AVCodecContext *avctx, AVFrame *pic,
                              GetByteContext *gb)
 {
     unsigned char rle_code;
@@ -128,7 +128,7 @@ static int msrle_decode_pal4(AVCodecContext *avctx, AVPicture *pic,
 }
 
 
-static int msrle_decode_8_16_24_32(AVCodecContext *avctx, AVPicture *pic,
+static int msrle_decode_8_16_24_32(AVCodecContext *avctx, AVFrame *pic,
                                    int depth, GetByteContext *gb)
 {
     uint8_t *output, *output_end;
@@ -243,7 +243,7 @@ static int msrle_decode_8_16_24_32(AVCodecContext *avctx, AVPicture *pic,
 }
 
 
-int ff_msrle_decode(AVCodecContext *avctx, AVPicture *pic,
+int ff_msrle_decode(AVCodecContext *avctx, AVFrame *pic,
                     int depth, GetByteContext *gb)
 {
     switch(depth){
diff --git a/libavcodec/msrledec.h b/libavcodec/msrledec.h
index a594de37bea..0c5b8b1c57e 100644
--- a/libavcodec/msrledec.h
+++ b/libavcodec/msrledec.h
@@ -33,7 +33,7 @@
  * @param depth     bit depth
  * @param gb        input bytestream context
  */
-int ff_msrle_decode(AVCodecContext *avctx, AVPicture *pic,
+int ff_msrle_decode(AVCodecContext *avctx, AVFrame *pic,
                     int depth, GetByteContext *gb);
 
 #endif /* AVCODEC_MSRLEDEC_H */
diff --git a/libavcodec/tscc.c b/libavcodec/tscc.c
index 98b5f7161b8..c96a577a81f 100644
--- a/libavcodec/tscc.c
+++ b/libavcodec/tscc.c
@@ -95,7 +95,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
     if (ret != Z_DATA_ERROR) {
         bytestream2_init(&c->gb, c->decomp_buf,
                          c->decomp_size - c->zstream.avail_out);
-        ff_msrle_decode(avctx, (AVPicture*)frame, c->bpp, &c->gb);
+        ff_msrle_decode(avctx, frame, c->bpp, &c->gb);
     }
 
     /* make the palette available on the way out */
-- 
GitLab