-
Notifications
You must be signed in to change notification settings - Fork 8.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use TerminateProcess to exit early (#16575)
Closes MSFT:46744208 BODGY: If the emperor is being dtor'd, it's because we've gone past the end of main, and released the ref in main. Then we might run into an edge case where main releases it's ref to the emperor, but one of the window threads might be in the process of exiting, and still holding a strong ref to the emperor. In that case, we can actually end up with the _window thread_ being the last reference, and calling App::Close on that thread will crash us with a E_WRONG_THREAD. This fixes the issue by calling `TerminateProcess` explicitly. How validated: The ES team manually ran the test pass this was crashing in a hundred times to make sure this actually fixed it. Co-authored-by: Leonard Hecker <lhecker@microsoft.com>
- Loading branch information
1 parent
a39ac59
commit 0d47c86
Showing
3 changed files
with
13 additions
and
41 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters