Mercurial > sdl-ios-xcode
view BUGS @ 4168:69bcba65c388 SDL-1.2
Fixed bug #526
Comment #1 From Simon Howard 2009-03-20 16:50:56
Hi,
I'm the author of Chocolate Doom, one of the other source ports that James
mentioned. This is a patch against the current SVN version of SDL 1.2 that
fixes the bug. It has been tested and hopefully should be obviously correct
from examining the changes. I'll give a brief explanation.
When the palette is set with SDL_SetPalette, the IDirectDrawPalette_SetEntries
DirectX function is invoked. However, when this happens, a WM_PALETTECHANGED
message is sent to the window.
A WM_PALETTECHANGED message can also be received if the palette is changed for
some other reason, like if the system palette is changed. Therefore, the
palette change handler (DX5_PaletteChanged) has code to deal with this case.
It distinguishes "expected" palette changes (set with SDL_SetPalette) from
"unexpected" palette changes using the colorchange_expected variable, which is
set before calling IDirectDrawPalette_SetEntries. However, the code to set
this variable is missing in the fullscreen code path. By setting this
variable, the palette change is handled properly and the freezes go away.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Mon, 13 Apr 2009 00:53:12 +0000 |
parents | 89b0f3d12fe2 |
children |
line wrap: on
line source
Bugs are now managed in the SDL bug tracker, here: http://bugzilla.libsdl.org/ You may report bugs there, and search to see if a given issue has already been reported, discussed, and maybe even fixed. You may also find help at the SDL mailing list. Subscription information: http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org Bug reports are welcome here, but we really appreciate if you use Bugzilla, as bugs discussed on the mailing list may be forgotten or missed.