[PATCH 8/9] gdi32: Use META_EXTFLOODFILL records for ExtFloodFill.

Dmitry Timoshkov dmitry at baikal.ru
Sun Jul 25 04:18:01 CDT 2021


Jacek Caban <jacek at codeweavers.com> wrote:
> +BOOL metadc_param5( HDC hdc, short func, short param1, short param2,
> +                    short param3, short param4, short param5 )
> +{
> +    char buffer[16];
> +    METARECORD *mr = (METARECORD *)&buffer;
> +    WORD *params = mr->rdParm;
> +
> +    mr->rdSize = 8;
> +    mr->rdFunction = func;
> +    params[0] = param5;
> +    params[1] = param4;
> +    params[2] = param3;
> +    params[3] = param2;
> +    params[4] = param1;
> +    return metadc_record( hdc, mr, mr->rdSize * 2);
> +}

sizeof(METARECORD) == 4 + 2 + 2 = 8 bytes, 5 * sizeof(params[0]) = 10 bytes,
and buffer[16] won't hold all of these. Wouldn't it be better to use something
like sizeof(FIELD_OFFSET(METARECORD, rdParm[5])) instead of hardcoded 16?

-- 
Dmitry.



More information about the wine-devel mailing list