view src/timer/macos/FastTimes.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 74212992fb08
children d910939febfa
line wrap: on
line source

/* File "FastTimes.h" - Original code by Matt Slot <fprefect@ambrosiasw.com>  */
/* Created 4/24/99    - This file is hereby placed in the public domain       */
/* Updated 5/21/99    - Calibrate to VIA, add TBR support, renamed functions  */
/* Updated 10/4/99    - Use AbsoluteToNanoseconds() in case Absolute = double */
/* Updated 2/15/00    - Check for native Time Manager, no need to calibrate   */
/* Updated 3/21/00    - Fixed ns conversion, create 2 different scale factors */
/* Updated 5/03/00    - Added copyright and placed into PD. No code changes   */

/* This file is Copyright (C) Matt Slot, 1999-2000. It is hereby placed into 
   the public domain. The author makes no warranty as to fitness or stability */

#ifndef __FAST_TIMES_HEADER__
#define __FAST_TIMES_HEADER__

/* **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** */
/* **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** */

extern void			FastInitialize(void);
extern UInt64		FastMicroseconds(void);
extern UInt64		FastMilliseconds(void);
extern StringPtr	FastMethod(void);

/* **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** */
/* **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** */

#endif /* __FAST_TIMES_HEADER__ */