Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix restore handling in Terminal Logger (#9454)
Fixes #9323 Context There are 4 related problems that occur in the issue #9323: 1. The logger fails and throws an internal logger exception because of the wrong assumptions about restore target appearance in the build. 2. The internal logger exception is caught and causes the build to shut down all loggers, including terminal logger. Because it happens before the build finished event is produced or processed by terminal logger, the rendering thread is not finished, and it leads to an infinite hang. 3. The errors during restore are not logged. 4. There is inconsistency with showing the message error MSB4017. If the internal logger exception is thrown from one place it shows, from another - not. In the current situation the build and logger are shut downed, but the message did not appear, which is confusing. (see [Bug]: error MSB4017 is not shown consistently when the internal logger exception occurs. #9455) Changes Made Fixed first 2 errors: Improved the handling of the restore such that there should not be throws. Only first restore that happens would be specially treated. I added shutting down of the render thread when shutting down the logger. Testing locally tested, unit tests
- Loading branch information