DescentDevelopers / Descent3

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

Windows crashdumps #514

Closed pzychotic closed 3 months ago

pzychotic commented 3 months ago

Pull Request Type

Description

Since the move to x64 Windows builds the code to manually parse callstacks in the event of unhandled exceptions wasn't used anymore. Maybe that code could have been ported to x64, I dunno. But nowadays we can just easily create a crashdump file aka MiniDump and share that for analysis.

For this to be remotely useful I also enabled the creation of debug symbols (PDB files) for all build configurations and install them, so they are available in the GitHub workflow artifacts. These shouldn't end up in the official install for the game though. For official releases it would be good to have these attached to the release on GitHub.

So when a problem comes up we can look up the version number we now already have in the executable and is recorded in the crashdump, download the matching debug symbols and analys the crash.

Related Issues

Screenshots (if applicable)

Checklist

Additional Comments

For proper releases of the game it would be nice to have the debug symbols on a symbol server, so they can be fetched automatically when analyzing a crashdump. GitHub doesn't seem to have a solution for this.

Lgt2x commented 3 months ago

Very useful tool, tested with success