Fix planarCopy to ignore the GRAY8 "pseudo"-palette, fixes libavtest regression test.
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sat, 21 Mar 2009 10:20:16 +0000 (10:20 +0000)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sat, 21 Mar 2009 10:20:16 +0000 (10:20 +0000)
Originally committed as revision 29021 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale

libswscale/swscale.c

index e9b65c4..bc35ad5 100644 (file)
@@ -2118,7 +2118,9 @@ static int planarCopy(SwsContext *c, uint8_t* src[], int srcStride[], int srcSli
         int height= (plane==0 || plane==3) ? srcSliceH: -((-srcSliceH)>>c->chrDstVSubSample);
 
         if (!dst[plane]) continue;
-        if (!src[plane])
+        // ignore palette for GRAY8
+        if (plane == 1 && !dst[2]) continue;
+        if (!src[plane] || (plane == 1 && !src[2]))
             fillPlane(dst[plane], dstStride[plane], length, height, y, (plane==3) ? 255 : 128);
         else
         {