diff --git a/libavcodec/vc1.c b/libavcodec/vc1.c index 2cd65ac81237430852907431f1f78fe6c5228629..f923d53ebecde7c5dddd6ee1988618f262c701f0 100644 --- a/libavcodec/vc1.c +++ b/libavcodec/vc1.c @@ -2496,6 +2496,8 @@ static int vc1_decode_p_mb(VC1Context *v, DCTELEM block[6][64]) v->mb_type[0][s->block_index[i]] = is_intra[i]; if(!coded_inter) coded_inter = !is_intra[i] & is_coded[i]; } + // if there are no coded blocks then don't do anything more + if(!intra_count && !coded_inter) return 0; dst_idx = 0; GET_MQUANT(); s->current_picture.qscale_table[mb_pos] = mquant;