View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0004670||The Dark Mod||Mapping||public||16.11.2017 10:53||20.12.2017 14:22|
|Target Version||TDM 2.06||Fixed in Version||TDM 2.06|
|Summary||0004670: Crash when dmap/testmapping while in-game.|
|Description||Using dmap [mapname] or testmap [mapname] while you're in-game will crash TDM. Testmap does it immediately, dmap appears to progress for a bit before crashing.|
Important! If you press escape to go to the menu, the commands work just fine. It is being in-game that causes the commands to cause a crash.
This affects both the 32 and 64-bit executables.
|Tags||No tags attached.|
What happens if you try this in 2.05?
One of my requests for beta testing was to be sure whatever you're reporting doesn't also fail in 2.05.
|I've dmapped from the console before in 2.05. It exits you from the mission but doesn't crash.|
|I have also regularly done the same with no issues. I have tested it just now on the latest package (testmapping the current map) and it is a direct crash.|
Goldwell has had the issue also -
|Same here, the same behavior as Spooks.|
Committed fix in svn rev 7353.
During dmapping process, each console message triggers screen draw, so that user can see messages in realtime.
This screen draw calls idRenderSystemLocal::EndFrame, which in turn runs game tics.
Here is the full sequence of events:
1. Game shutdown is started (during dmapping process).
2. Entities are deleted one by one, the player is deleted first.
3. During one of the entities being deleted, console message is printed.
4. The idCommonLocal::VPrintf calls UpdateScreen because com_refreshOnPrint is enabled by dmap.
5. UpdateScreen calls EndFrame, ActivateFrontent, RunGameTics, game.RunFrame.
6. Something inside game.RunFrame tries to get player's location, so it crashes because player is NULL.
This change fixes the problem on step 6:
if player is null at the beginning of game.RunFrame, then function returns immediately.
|16.11.2017 10:53||Spooks||New Issue|
|06.12.2017 14:25||grayman||Target Version||=> TDM 2.06|
|13.12.2017 15:02||grayman||Note Added: 0009773|
|17.12.2017 14:31||grayman||Note Added: 0009814|
|18.12.2017 03:40||Springheel||Note Added: 0009835|
|19.12.2017 09:26||Spooks||Note Added: 0009838|
||Note Added: 0009848|
|20.12.2017 12:32||Judith||Note Added: 0009852|
|20.12.2017 14:02||stgatilov||Assigned To||=> stgatilov|
|20.12.2017 14:02||stgatilov||Status||new => assigned|
|20.12.2017 14:22||stgatilov||Note Added: 0009853|
|20.12.2017 14:22||stgatilov||Status||assigned => resolved|
|20.12.2017 14:22||stgatilov||Fixed in Version||=> TDM 2.06|
|20.12.2017 14:22||stgatilov||Resolution||open => fixed|