dotnet / project-system

The .NET Project System for Visual Studio
MIT License
967 stars 386 forks source link

Allow re-entrancy in ProjectHotReloadSessionManager's semaphore #9473

Closed drewnoakes closed 4 months ago

drewnoakes commented 4 months ago

Fixes AB#2065632

After updating the VSSDK in #9460, we converted a bunch of usages of AsyncSemaphore to ReentrantSemaphore.

This has caused an issue in hot reload.

The new semaphore class has several modes. We change from disallowing re-entrancy, so allowing freeform re-entrancy.

Microsoft Reviewers: Open in CodeFlow