gdi32: Correct order of matrix elements in World transform

Dmitry Timoshkov dmitry at codeweavers.com
Thu Dec 25 09:45:55 CST 2008


"Konstantin Kondratyuk" <kondratyuk at etersoft.ru> wrote:

> Oops, this patch is not full.
> 
> I think, there is code with bad index also:
> 
>    /* Extra transformation specified by caller */
>    if (lpmat && !is_identity_MAT2(lpmat))
>    {
>        FT_Matrix extraMat;
>        extraMat.xx = FT_FixedFromFIXED(lpmat->eM11);
>        extraMat.xy = FT_FixedFromFIXED(lpmat->eM21);   // <<<<<<<
>        extraMat.yx = FT_FixedFromFIXED(lpmat->eM12);   // <<<<<<<
>        extraMat.yy = FT_FixedFromFIXED(lpmat->eM22);
>        pFT_Matrix_Multiply(&extraMat, &transMat);
>        pFT_Matrix_Multiply(&extraMat, &transMatUnrotated);
>        needsTransform = TRUE;
>    }
> 
> What can I do? Send second fix? Or send "full" patch for both transformations?

Have you tested your patch? In my tests gdi and freetype differ in matrix usage.

-- 
Dmitry.



More information about the wine-devel mailing list