Mercurial > sdl-ios-xcode
annotate src/video/photon/SDL_ph_mouse_c.h @ 997:3bf4103b2b89
Date: Sat, 27 Nov 2004 13:35:43 +0100
From: "Martin Bickel"
Subject: [SDL] Patch: fixing uninitilized palette
while running Valgrind over my application I found the following
problem in SDL:
The function MapNto1 allocates SDL_Color colors[256] but does not
initialize it.
SDL_DitherColors is then called which initialized the r, g and b
component, but not the 'unused' component of each color.
When Map1to1 is called from MapNto1, it runs a memcmp on the colors,
which also evaluates the unused component and therefor returns
differences much more often than necessary.
So the 'unused' component of SDL_Color should be initialized. This
patch does this by calling memset for the whole array in MapNto1 .
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Tue, 30 Nov 2004 14:28:20 +0000 |
parents | b8d311d90021 |
children | c9b51268668f |
rev | line source |
---|---|
0 | 1 /* |
2 SDL - Simple DirectMedia Layer | |
769
b8d311d90021
Updated copyright information for 2004 (Happy New Year!)
Sam Lantinga <slouken@libsdl.org>
parents:
701
diff
changeset
|
3 Copyright (C) 1997-2004 Sam Lantinga |
0 | 4 |
5 This library is free software; you can redistribute it and/or | |
6 modify it under the terms of the GNU Library General Public | |
7 License as published by the Free Software Foundation; either | |
8 version 2 of the License, or (at your option) any later version. | |
9 | |
10 This library is distributed in the hope that it will be useful, | |
11 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 Library General Public License for more details. | |
14 | |
15 You should have received a copy of the GNU Library General Public | |
16 License along with this library; if not, write to the Free | |
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
18 | |
19 Sam Lantinga | |
252
e8157fcb3114
Updated the source with the correct e-mail address
Sam Lantinga <slouken@libsdl.org>
parents:
0
diff
changeset
|
20 slouken@libsdl.org |
0 | 21 */ |
22 | |
701
aaf3b8af6616
Date: Sat, 30 Aug 2003 16:28:10 +0300
Sam Lantinga <slouken@libsdl.org>
parents:
297
diff
changeset
|
23 #ifndef __SDL_PH_MOUSE_H__ |
aaf3b8af6616
Date: Sat, 30 Aug 2003 16:28:10 +0300
Sam Lantinga <slouken@libsdl.org>
parents:
297
diff
changeset
|
24 #define __SDL_PH_MOUSE_H__ |
aaf3b8af6616
Date: Sat, 30 Aug 2003 16:28:10 +0300
Sam Lantinga <slouken@libsdl.org>
parents:
297
diff
changeset
|
25 |
0 | 26 #ifdef SAVE_RCSID |
27 static char rcsid = | |
28 "@(#) $Id$"; | |
701
aaf3b8af6616
Date: Sat, 30 Aug 2003 16:28:10 +0300
Sam Lantinga <slouken@libsdl.org>
parents:
297
diff
changeset
|
29 #endif /* SAVE_RCSID */ |
0 | 30 |
31 #include "SDL_ph_video.h" | |
32 | |
33 /* Functions to be exported */ | |
34 extern void ph_FreeWMCursor(_THIS, WMcursor *cursor); | |
35 extern WMcursor *ph_CreateWMCursor(_THIS, | |
36 Uint8 *data, Uint8 *mask, int w, int h, int hot_x, int hot_y); | |
37 extern PhCursorDef_t ph_GetWMPhCursor(WMcursor *cursor); | |
38 extern int ph_ShowWMCursor(_THIS, WMcursor *cursor); | |
39 extern void ph_WarpWMCursor(_THIS, Uint16 x, Uint16 y); | |
40 extern void ph_CheckMouseMode(_THIS); | |
701
aaf3b8af6616
Date: Sat, 30 Aug 2003 16:28:10 +0300
Sam Lantinga <slouken@libsdl.org>
parents:
297
diff
changeset
|
41 extern void ph_UpdateMouse(_THIS); |
aaf3b8af6616
Date: Sat, 30 Aug 2003 16:28:10 +0300
Sam Lantinga <slouken@libsdl.org>
parents:
297
diff
changeset
|
42 |
aaf3b8af6616
Date: Sat, 30 Aug 2003 16:28:10 +0300
Sam Lantinga <slouken@libsdl.org>
parents:
297
diff
changeset
|
43 #endif /* __SDL_PH_MOUSE_H__ */ |