diff --git a/libswscale/swscale.c b/libswscale/swscale.c index 9a74f95f86303abd76413050e0658b2f2b9ff07a..17fe3c6fa7304671fe890f0a8ab881bd42712be1 100644 --- a/libswscale/swscale.c +++ b/libswscale/swscale.c @@ -1989,11 +1989,8 @@ static int planarCopy(SwsContext *c, uint8_t* src[], int srcStride[], int srcSli int y= plane==0 ? srcSliceY: -((-srcSliceY)>>c->chrDstVSubSample); int height= plane==0 ? srcSliceH: -((-srcSliceH)>>c->chrDstVSubSample); - if ((isGray(c->srcFormat) || isGray(c->dstFormat)) && plane>0) - { - if (!isGray(c->dstFormat)) + if (dst[plane] && !src[plane]) fillPlane(dst[plane], dstStride[plane], length, height, y, 128); - } else { if (dstStride[plane]==srcStride[plane] && srcStride[plane] > 0)