Quartz fix:
ut2004 makes a 2D window for the splash screen, which sets the screen surface's pixels field. Then we tear down that video mode and create a GL context, and the Quartz target isn't resetting the pixels field to NULL. When you just create a GL window, the structure is memset'd to zero the first time through, so unless you hit ut2004's codepath, you won't see the bug. :) Without this patch, quitting a windowed ut2003/ut2004 game makes the OS dump a warning about a bogus free() to stderr, but it doesn't actually crash. All we need to do is explicitly initialize the current->pixels field. --HG-- extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%40853
This commit is contained in:
parent
0a10de8a22
commit
fb965d4ea0
1 changed files with 1 additions and 0 deletions
|
@ -828,6 +828,7 @@ static SDL_Surface* QZ_SetVideoMode (_THIS, SDL_Surface *current, int width,
|
||||||
int height, int bpp, Uint32 flags) {
|
int height, int bpp, Uint32 flags) {
|
||||||
|
|
||||||
current->flags = 0;
|
current->flags = 0;
|
||||||
|
current->pixels = NULL;
|
||||||
|
|
||||||
/* Setup full screen video */
|
/* Setup full screen video */
|
||||||
if ( flags & SDL_FULLSCREEN ) {
|
if ( flags & SDL_FULLSCREEN ) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue