-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WinHttpHandler: fix double -> uint conversions for ARM64 #45480
Conversation
Tagging subscribers to this area: @dotnet/ncl Issue DetailsAccording to the Explicit numeric conversions section of the C# specification, the unchecked case of a
Looks like we do not handle the Fixes #45249 Note: /cc @EgorBo @tannergooding if interested.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A tiny nit, otherwise LGTM
src/libraries/System.Net.Http.WinHttpHandler/src/System/Net/Http/WinHttpHandler.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Net.Http.WinHttpHandler/src/System/Net/Http/WinHttpHandler.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Net.Http.WinHttpHandler/src/System/Net/Http/WinHttpHandler.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Net.Http.WinHttpHandler/src/System/Net/Http/WinHttpHandler.cs
Outdated
Show resolved
Hide resolved
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Test failures are unrelated. |
Failures are known and unrelated. Merging to unblock CI. |
Failures are:
(was looking at it while Santi merged the PR) |
@antonfirsov even if test failures are unrelated, in future please search for existing issues or create them and link to the affected build so that the failures are refcounted. |
According to the Explicit numeric conversions section of the C# specification, the unchecked case of a
double
->uint
cast goes as following:Looks like we do not handle the
Timeout.InfiniteTimeSpan.TotalMilliseconds == -1.0
case correctly forReceiveDataTimeout
andTcpKeepAlive*
, the latter resulting in test failures on ARM64 machines.Fixes #45249
Note:
The failing
Libraries Test Run release coreclr windows arm64 Release
job does not get executed on PR-s, only onrefs/heads/master
, which means there is no way for me to validate the change before merging it. (Unless someone can suggest a way to access an ARM64 windows machine.)/cc @EgorBo @tannergooding if interested.