Mercurial > sdl-ios-xcode
annotate test/testtypes.c @ 852:2651b6b43840
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.
author | Ryan C. Gordon <icculus@icculus.org> |
---|---|
date | Tue, 24 Feb 2004 06:53:22 +0000 |
parents | 45b1c4303f87 |
children | d93862a3d821 |
rev | line source |
---|---|
0 | 1 |
2 #include <stdio.h> | |
47
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
0
diff
changeset
|
3 #include "SDL_main.h" |
0 | 4 #include "SDL_types.h" |
5 | |
6 int main(int argc, char *argv[]) | |
7 { | |
8 int error = 0; | |
9 int verbose = 1; | |
10 | |
11 if ( argv[1] && (strcmp(argv[1], "-q") == 0) ) | |
12 verbose = 0; | |
13 | |
14 if ( sizeof(Uint8) != 1 ) { | |
15 if ( verbose ) | |
16 printf("sizeof(Uint8) != 1, instead = %d\n", | |
17 sizeof(Uint8)); | |
18 ++error; | |
19 } | |
20 if ( sizeof(Uint16) != 2 ) { | |
21 if ( verbose ) | |
22 printf("sizeof(Uint16) != 2, instead = %d\n", | |
23 sizeof(Uint16)); | |
24 ++error; | |
25 } | |
26 if ( sizeof(Uint32) != 4 ) { | |
27 if ( verbose ) | |
28 printf("sizeof(Uint32) != 4, instead = %d\n", | |
29 sizeof(Uint32)); | |
30 ++error; | |
31 } | |
32 #ifdef SDL_HAS_64BIT_TYPE | |
33 if ( sizeof(Uint64) != 8 ) { | |
34 if ( verbose ) | |
35 printf("sizeof(Uint64) != 8, instead = %d\n", | |
36 sizeof(Uint64)); | |
37 ++error; | |
38 } | |
39 #else | |
40 if ( verbose ) { | |
41 printf("WARNING: No 64-bit datatype on this platform\n"); | |
42 } | |
43 #endif | |
44 if ( verbose && ! error ) | |
45 printf("All data types are the expected size.\n"); | |
46 | |
47 return( error ? 1 : 0 ); | |
48 } |