diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c index b4699b7aea2621d1d267ed0472878198e9a0f5e0..0f3d7eb24043f42c39182edc33b39a2cc7244434 100644 --- a/libavcodec/vp3.c +++ b/libavcodec/vp3.c @@ -1406,6 +1406,8 @@ static void render_slice(Vp3DecodeContext *s, int slice) int i = s->fragment_start[plane] + (y>>3)*(s->fragment_width>>!!plane); if (!s->flipped_image) stride = -stride; + if (CONFIG_GRAY && plane && (s->avctx->flags & CODEC_FLAG_GRAY)) + continue; if(FFABS(stride) > 2048) @@ -1424,8 +1426,7 @@ static void render_slice(Vp3DecodeContext *s, int slice) } /* transform if this block was coded */ - if ((s->all_fragments[i].coding_method != MODE_COPY) && - !((s->avctx->flags & CODEC_FLAG_GRAY) && plane)) { + if (s->all_fragments[i].coding_method != MODE_COPY) { if ((s->all_fragments[i].coding_method == MODE_USING_GOLDEN) || (s->all_fragments[i].coding_method == MODE_GOLDEN_MV))