Stefan Dösinger wrote:
Am Mittwoch 31 Januar 2007 10:25 schrieb H. Verbeet:
On 30/01/07, Francois Gouget
<fgouget(a)codeweavers.com> wrote:
I have attached the relevant patches. Does this
look ok to the DirectX
gurus?
At least the wined3d part looks ok to me, although we should probably
be cleaning up the GL context as well, there and in the other places
where we return.
For some reason I didn't get the original patch, or I
accidentally deleted
it(more likely).
Yo can find it there:
http://www.winehq.org/pipermail/wine-devel/2007-January/053725.html
[...]
I do not know to what extend we want to catch screen
res change failures. The
resolution? I'd say yes. Color depth? Propably no because we can't change it
anyway. Refresh rate? Don't think its important.
There's already some code dealing with color depth issues:
devmode.dmBitsPerPel = (bpp >= 24) ? 32 : bpp; /* Stupid XVidMode
cannot change bpp */
But there's another place where we deal with these issues differently:
if(devmode.dmBitsPerPel == 24) devmode.dmBitsPerPel = 32;
[...]
ret = ChangeDisplaySettingsExW(NULL, &devmode, NULL,
CDS_FULLSCREEN, NULL);
if (ret != DISP_CHANGE_SUCCESSFUL) {
if(devmode.dmDisplayFrequency != 0) {
WARN("ChangeDisplaySettingsExW failed, trying without the
refresh rate\n");
devmode.dmFields &= ~DM_DISPLAYFREQUENCY;
devmode.dmDisplayFrequency = 0;
ret = ChangeDisplaySettingsExW(NULL, &devmode, NULL,
CDS_FULLSCREEN, NULL) != DISP_CHANGE_SUCCESSFUL;
}
if(ret != DISP_CHANGE_SUCCESSFUL) {
return DDERR_INVALIDMODE;
}
}
--
Francois Gouget
fgouget(a)codeweavers.com