DescentDevelopers / Descent3

Descent 3 by Outrage Entertainment
GNU General Public License v3.0
2.73k stars 231 forks source link

[Runtime Issue]: Quitting the game causes “Debug Assertion Failed! `_CrtlsValidHeapPointer(block)`” #444

Closed Jayman2000 closed 2 weeks ago

Jayman2000 commented 2 weeks ago

Build Version

v1.5 a059b14677204681030d41706b8296962cbb9be8

Operating System Environment

CPU Environment

Game Modes Affected

Game Environment

I’m using game data from the Windows Dual-Jewel version of Descent 3 v1.4.

Description

When I quit the game, this message appears:

Microsoft Visual C++ Runtime Library

Debug Assertion Failed!

Program: …y mine\Descent3\main\builds\win32\Descent3\Debug\Descent3.exe
File: minkernel\crts\ucrt\src\appcrt\heap\debug_heap.cpp
Line: 904

Expression: _CrtlsValidHeapPointer(block)

For information on how your program can cause an assertion failure, see the Visual C++ documentation on asserts.

(Press Retry to debug the application)

Choose one of these options: Abort, Retry, Ignore

Regression Status

I don’t know.

Steps to Reproduce

  1. Run Descent3 -nointro -pilot <pilot-name>
  2. Wait for the main menu to load.
  3. Press Q.
  4. Press Y.
pzychotic commented 2 weeks ago

This seems to be introduced by #436. Disabling the CMake option ENABLE_MEM_RTL fixes the problem for me.