aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2018-01-28 02:29:02 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2018-07-08 13:07:06 +0200
commitf7f814ade8c262f476b5b7eca9cea8829d25ef28 (patch)
tree86c14150bb5c3365f5231e2bd1517fa811270afd
parentfbc5e36fdd0baff7202bc8b603979d68e72b69cf (diff)
downloadffmpeg-f7f814ade8c262f476b5b7eca9cea8829d25ef28.tar.gz
avcodec/mpeg4videodec: Avoid possibly aliasing violating casts
Found-by: kierank Reviewed-by: Kieran Kunhya <kieran618@googlemail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit d4967c04e040b3b2f937cad88599af825147ec94) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/mpeg4videodec.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libavcodec/mpeg4videodec.c b/libavcodec/mpeg4videodec.c
index 41fe4dec1d..aa71aff57e 100644
--- a/libavcodec/mpeg4videodec.c
+++ b/libavcodec/mpeg4videodec.c
@@ -1251,10 +1251,12 @@ not_coded:
*/
static int mpeg4_decode_partitioned_mb(MpegEncContext *s, int16_t block[6][64])
{
- Mpeg4DecContext *ctx = (Mpeg4DecContext *)s;
+ Mpeg4DecContext *ctx = s->avctx->priv_data;
int cbp, mb_type;
const int xy = s->mb_x + s->mb_y * s->mb_stride;
+ av_assert2(s == (void*)ctx);
+
mb_type = s->current_picture.mb_type[xy];
cbp = s->cbp_table[xy];
@@ -1336,12 +1338,13 @@ static int mpeg4_decode_partitioned_mb(MpegEncContext *s, int16_t block[6][64])
static int mpeg4_decode_mb(MpegEncContext *s, int16_t block[6][64])
{
- Mpeg4DecContext *ctx = (Mpeg4DecContext *)s;
+ Mpeg4DecContext *ctx = s->avctx->priv_data;
int cbpc, cbpy, i, cbp, pred_x, pred_y, mx, my, dquant;
int16_t *mot_val;
static const int8_t quant_tab[4] = { -1, -2, 1, 2 };
const int xy = s->mb_x + s->mb_y * s->mb_stride;
+ av_assert2(s == (void*)ctx);
av_assert2(s->h263_pred);
if (s->pict_type == AV_PICTURE_TYPE_P ||