[0.72]Fix INVALID_PARAMETER crash in ThreadPoolSchedulerWin::Post by adding null handle checks #15157
+28
−4
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.
Description
Fix INVALID_PARAMETER crash in ThreadPoolSchedulerWin::Post by adding null handle checks . The fix adds essential null pointer checks to prevent the Watson failure while keeping changes surgical and maintaining all existing behavior
Type of Change
Erase all that don't apply.
Why
Successfully implemented minimal changes to fix the INVALID_PARAMETER crash in ThreadPoolSchedulerWin::Post that occurred during React Native Windows component destruction to resolve watson bug
Resolves [#15099]
What
Post(): Added null check before SubmitThreadpoolWork call
Post(): Added thread counter decrement when work can't be submitted
Constructor: Added null validation after CreateThreadpoolWork
AwaitTermination(): Added null check before WaitForThreadpoolWorkCallbacks
WaitForThreadPoolWorkCompletion(): Added null check in test function
Screenshots
Add any relevant screen captures here from before or after your changes.
Testing
If you added tests that prove your changes are effective or that your feature works, add a few sentences here detailing the added test scenarios.
Changelog
Should this change be included in the release notes: yes
Add a brief summary of the change to use in the release notes for the next release.
Microsoft Reviewers: Open in CodeFlow