Change: [Win32] unify the crashlog handler with the other OSes #11236
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation / Problem
Windows didn't use the base crashlog handler for most part, and does everything itself. This is a bit annoying when we want to change things, as you have to remember to change it in two places. So while working on #11232 this was a real pita.
So, in this PR I set out to fix that discrepancy, and make sure Windows is much more like the rest.
Description
The main difference is that Windows delayed creating a
crash.sav
. This is the only OS that does so, both MacOS and Linux create acrash.sav
immediately. Otherwise, other PRs before this PR already made sure Windows is much more like the rest.While at it, make the crash text a bit more readable, and sync this with MacOS. It just read a bit awkward.
Limitations
There is an argument to be made that a
crash.sav
should not be made when a crashlog is generated, but only on demand. As it is not unlikely creating a savegame causes other problems. After all, we are in a broken state. But we also noticed this often leads to users not having acrash.sav
to add to a ticket, as they simply didn't read the dialog, or didn't understand what it was saying.In the long run, I rather focus on something JGRPP did, and detect if we crash during the crash handler, and handle that case more proper. That will be done in a follow-up PR, for all OSes (and not only for Windows).
Checklist for review
Some things are not automated, and forgotten often. This list is a reminder for the reviewers.