# HG changeset patch
# User Ryan C. Gordon <icculus@icculus.org>
# Date 1077605602 0
# Node ID 2651b6b43840651d3629c420f9a5e4bc5b69d4aa
# Parent  2687d28166d2d5dd432612f4fdb4f35cb2ca1bac
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.

diff -r 2687d28166d2 -r 2651b6b43840 src/video/quartz/SDL_QuartzVideo.m
--- a/src/video/quartz/SDL_QuartzVideo.m	Mon Feb 23 15:49:28 2004 +0000
+++ b/src/video/quartz/SDL_QuartzVideo.m	Tue Feb 24 06:53:22 2004 +0000
@@ -828,6 +828,7 @@
                                      int height, int bpp, Uint32 flags) {
 
     current->flags = 0;
+    current->pixels = NULL;
 
     /* Setup full screen video */
     if ( flags & SDL_FULLSCREEN ) {