Revert the ppltasks change that introduced an ole32.dll
dependency
#3607
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.
This is a clean revert (no manual changes) of #2654 and the following #3255 (in reverse order). #3255 was a targeted fix (partial revert) for an incredibly disruptive bincompat bug, but #2654 has caused even more trouble. This full revert:
ole32.dll
was disruptive to certain exotic scenarios, andole32.dll
.By performing a full revert, we no longer need the partial revert. This returns us to the state that we successfully lived with in VS 2015 through VS 2022 17.2 inclusive.
@Scottj1s, the original author of #2654, agrees with the full revert here, and has confirmed that the original affected customer who needed that change has the ability to use a workaround in perpetuity.
🪞 The mirror of this PR, MSVC-PR-462260, additionally reverts the non-GitHub change in MSVC-PR-339372 affecting
<ppltasks.h>
.❕ By changing
ppltasks.cpp
again, this affects the VCRedist. For the bincompat scenario involving mixing VS 2015, this should be unquestionably safe (the partial revert and the full revert result in the same behavior for the function in question, that's why the partial revert worked). For the question of when we can ship this fix, because it is urgently needed by the XStore team, we are planning to port this fix to VS 2022 17.6 before it reaches General Availability, which will require unlocking its redist, and then that unlocked redist will flow into VS 2022 17.7, so there should be no remaining mix-and-match nightmares (I hope).I am not performing any other changes or cleanups at this time (I may come back to
ppltasks.cpp
in the future to add some#endif
comments, but no logic changes, I have had a lifetime of being burned here).I've filed #3606 to capture the vNext comments that are being reverted here.