Tri map records pt.2: prevent menu crashes

This commit is contained in:
NepDisk 2025-04-12 09:38:17 -04:00
parent 0ab033c497
commit 807e95a011
3 changed files with 5 additions and 3 deletions

View file

@ -101,7 +101,7 @@
extern "C" {
#endif
//#define NOMD5
#define NOMD5
// Uncheck this to compile debugging code
//#define RANGECHECK

View file

@ -542,6 +542,8 @@ UINT8 M_GotLowEnoughTime(INT32 tictime)
if (!mapheaderinfo[i] || (mapheaderinfo[i]->menuflags & LF2_NOTIMEATTACK))
continue;
if (preset == -1)
return false;
if (!mapheaderinfo[i]->mainrecord[preset] || !mapheaderinfo[i]->mainrecord[preset]->time)
return false;
else if ((curtics += mapheaderinfo[i]->mainrecord[preset]->time) > tictime)

View file

@ -5218,7 +5218,7 @@ static void M_DrawStatsMaps(void)
if (!mapheaderinfo[j] || (mapheaderinfo[j]->menuflags & LF2_NOTIMEATTACK))
continue;
if (!mapheaderinfo[j]->mainrecord[preset] || mapheaderinfo[j]->mainrecord[preset]->time <= 0)
if (preset == -1 || !mapheaderinfo[j]->mainrecord[preset] || mapheaderinfo[j]->mainrecord[preset]->time <= 0)
{
mapsunfinished++;
continue;
@ -5665,7 +5665,7 @@ void M_DrawTimeAttackMenu(void)
{
INT32 dupadjust = (vid.width/vid.dupx);
tic_t lap = 0, time = 0;
if (mapheaderinfo[cv_nextmap.value-1]->mainrecord[preset])
if (preset != -1 && mapheaderinfo[cv_nextmap.value-1]->mainrecord[preset])
{
lap = mapheaderinfo[cv_nextmap.value-1]->mainrecord[preset]->lap;
time = mapheaderinfo[cv_nextmap.value-1]->mainrecord[preset]->time;