[FFmpeg-cvslog] r29012 - in trunk/libswscale: swscale.c swscale_template.c

Reimar Döffinger Reimar.Doeffinger
Fri Mar 20 17:57:29 CET 2009


On Fri, Mar 20, 2009 at 03:16:24PM +0100, sdrik wrote:
> @@ -2110,14 +2111,14 @@ static int planarCopy(SwsContext *c, uin
>                        int srcSliceH, uint8_t* dst[], int dstStride[])
>  {
>      int plane;
> -    for (plane=0; plane<3; plane++)
> +    for (plane=0; plane<4; plane++)
>      {
> -        int length= plane==0 ? c->srcW  : -((-c->srcW  )>>c->chrDstHSubSample);
> -        int y=      plane==0 ? srcSliceY: -((-srcSliceY)>>c->chrDstVSubSample);
> -        int height= plane==0 ? srcSliceH: -((-srcSliceH)>>c->chrDstVSubSample);
> +        int length= (plane==0 || plane==3) ? c->srcW  : -((-c->srcW  )>>c->chrDstHSubSample);
> +        int y=      (plane==0 || plane==3) ? srcSliceY: -((-srcSliceY)>>c->chrDstVSubSample);
> +        int height= (plane==0 || plane==3) ? srcSliceH: -((-srcSliceH)>>c->chrDstVSubSample);
>  
>          if (dst[plane] && !src[plane])
> -                fillPlane(dst[plane], dstStride[plane], length, height, y, 128);
> +            fillPlane(dst[plane], dstStride[plane], length, height, y, (plane==3) ? 255 : 128);
>          else
>          {
>              if (dstStride[plane]==srcStride[plane] && srcStride[plane] > 0)

Did you even run the regression tests on that at all? It sure makes them crash
reliably here and on all FATE machines (as far as it even builds).




More information about the ffmpeg-cvslog mailing list