Fix some integer warnings in 64-bit builds

This commit is contained in:
Vinnie Falco
2017-11-07 07:09:57 -08:00
parent 6eba0e8f9e
commit 2ed1d9affb
4 changed files with 16 additions and 12 deletions

View File

@ -1,3 +1,9 @@
Version 140:
* Fix some integer warnings in 64-bit builds
--------------------------------------------------------------------------------
Version 139:
* Revisit boost library min/max guidance

View File

@ -417,10 +417,10 @@ operator()()
}
auto& r = sr_.reader_impl();
boost::winapi::DWORD_ const nNumberOfBytesToWrite =
(std::min<boost::winapi::DWORD_>)(
beast::detail::clamp((std::min<std::uint64_t>)(
r.body_.last_ - r.pos_, sr_.limit())),
2147483646);
static_cast<boost::winapi::DWORD_>(
(std::min<std::uint64_t>)(
(std::min<std::uint64_t>)(r.body_.last_ - r.pos_, sr_.limit()),
(std::numeric_limits<boost::winapi::DWORD_>::max)()));
boost::asio::windows::overlapped_ptr overlapped{
sock_.get_executor().context(), *this};
auto& ov = *overlapped.get();
@ -514,10 +514,10 @@ write_some(
if(ec)
return 0;
boost::winapi::DWORD_ const nNumberOfBytesToWrite =
(std::min<boost::winapi::DWORD_>)(
beast::detail::clamp((std::min<std::uint64_t>)(
r.body_.last_ - r.pos_, sr.limit())),
2147483646);
static_cast<boost::winapi::DWORD_>(
(std::min<std::uint64_t>)(
(std::min<std::uint64_t>)(r.body_.last_ - r.pos_, sr.limit()),
(std::numeric_limits<boost::winapi::DWORD_>::max)()));
auto const bSuccess = ::TransmitFile(
sock.native_handle(),
r.body_.file_.native_handle(),

View File

@ -93,8 +93,7 @@ public:
{
if(length)
{
if(*length > (
std::numeric_limits<std::size_t>::max)())
if(static_cast<std::size_t>(*length) != *length)
{
ec = error::buffer_overflow;
return;

View File

@ -88,8 +88,7 @@ public:
{
if(length)
{
if(*length > (
std::numeric_limits<std::size_t>::max)())
if(static_cast<std::size_t>(*length) != *length)
{
ec = error::buffer_overflow;
return;