mirror of
https://github.com/fabiangreffrath/woof.git
synced 2025-09-28 07:36:44 -04:00
fix possible integer overflows in timing functions
This commit is contained in:
parent
fb8c4e77d0
commit
28f0d25c3f
@ -83,7 +83,7 @@ int I_GetTimeMS(void)
|
|||||||
|
|
||||||
int I_GetTime_RealTime(void)
|
int I_GetTime_RealTime(void)
|
||||||
{
|
{
|
||||||
return I_GetTimeMS() * TICRATE / 1000;
|
return (int64_t)I_GetTimeMS() * TICRATE / 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
// killough 4/13/98: Make clock rate adjustable by scale factor
|
// killough 4/13/98: Make clock rate adjustable by scale factor
|
||||||
@ -92,7 +92,7 @@ int clock_rate;
|
|||||||
|
|
||||||
static int I_GetTime_Scaled(void)
|
static int I_GetTime_Scaled(void)
|
||||||
{
|
{
|
||||||
return I_GetTimeMS() * clock_rate * TICRATE / 100000;
|
return (int64_t)I_GetTimeMS() * clock_rate * TICRATE / 100000;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int I_GetTime_FastDemo(void)
|
static int I_GetTime_FastDemo(void)
|
||||||
@ -117,12 +117,12 @@ static int I_GetFracTimeFastDemo(void)
|
|||||||
|
|
||||||
static int I_GetFracRealTime(void)
|
static int I_GetFracRealTime(void)
|
||||||
{
|
{
|
||||||
return I_GetTimeMS() * TICRATE % 1000 * FRACUNIT / 1000;
|
return (int64_t)I_GetTimeMS() * TICRATE % 1000 * FRACUNIT / 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int I_GetFracScaledTime(void)
|
static int I_GetFracScaledTime(void)
|
||||||
{
|
{
|
||||||
return I_GetTimeMS() * clock_rate * TICRATE / 100 % 1000 * FRACUNIT / 1000;
|
return (int64_t)I_GetTimeMS() * clock_rate * TICRATE / 100 % 1000 * FRACUNIT / 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
int (*I_GetFracTime)(void) = I_GetFracRealTime;
|
int (*I_GetFracTime)(void) = I_GetFracRealTime;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user