ddraw [try 3]: SetCooperativeLevel with Full screen + exclusive + normal is authorized

Henri Verbeet hverbeet at gmail.com
Wed Aug 25 06:11:42 CDT 2010


On 25 August 2010 08:48, David Adam <david.adam.cnrs at gmail.com> wrote:
> +        if(cooplevel == (DDSCL_NORMAL | DDSCL_EXCLUSIVE) )
So what happens if you set e.g. "DDSCL_NORMAL | DDSCL_EXCLUSIVE |
DDSCL_FPUPRESERVE"? You also still have trailing spaces.

The way this would conceptually make sense to me is if you always need
either NORMAL or EXCLUSIVE, with NORMAL | EXCLUSIVE -> EXCLUSIVE and
EXCLUSIVE requiring FULLSCREEN. (Well, except for SETFOCUSWINDOW,
which seems to live in a world of its own.) I.e., something along
these lines:

if (coop & SETFOCUSWINDOW)
{
    ...
    return;
}

if (coop & EXCLUSIVE)
{
    if (!(coop & FULLSCREEN)) fail();
    ...
}
else if (coop & NORMAL)
{
    ...
}
else fail();



More information about the wine-devel mailing list