Avoid updating startscreen too often in a debug build and fix crash if it never got updated even once

This commit is contained in:
Magnus Norddahl 2023-12-23 01:03:08 +01:00
commit 3c0414a6d8
2 changed files with 6 additions and 1 deletions

View file

@ -656,7 +656,11 @@ void FStartScreen::Render(bool force)
{
auto nowtime = I_msTime();
// Do not refresh too often. This function gets called a lot more frequently than the screen can update.
#ifdef _DEBUG
if (nowtime - screen->FrameTime > 3000 || force)
#else
if (nowtime - screen->FrameTime > 30 || force)
#endif
{
screen->FrameTime = nowtime;
screen->FrameTimeNS = I_nsTime();

View file

@ -113,7 +113,8 @@ bool FGenericStartScreen::DoProgress(int advance)
{ // Time to draw another notch.
ClearBlock(StartupBitmap, bcolor, (320 - 100) * 2, 480 * 2 - 30, notch_pos, 4 * 2);
NotchPos = notch_pos;
StartupTexture->CleanHardwareData(true);
if (StartupTexture)
StartupTexture->CleanHardwareData(true);
}
}
return FStartScreen::DoProgress(advance);