diff --git a/src/Nazara/Network/Posix/IpAddressImpl.cpp b/src/Nazara/Network/Posix/IpAddressImpl.cpp index 13eb10c31..3cd50535d 100644 --- a/src/Nazara/Network/Posix/IpAddressImpl.cpp +++ b/src/Nazara/Network/Posix/IpAddressImpl.cpp @@ -218,9 +218,9 @@ namespace Nz IpAddress::IPv6 address = ipAddress.ToIPv6(); for (unsigned int i = 0; i < 8; ++i) { - UInt16 networkOrder = htons(address[i]); - socketAddress->sin6_addr.s6_addr[2 * i] = networkOrder / 256; - socketAddress->sin6_addr.s6_addr[2 * i + 1] = networkOrder % 256; + u_short addressPart = htons(address[i]); + socketAddress->sin6_addr.s6_addr[i * 2 + 0] = addressPart >> 0; + socketAddress->sin6_addr.s6_addr[i * 2 + 1] = addressPart >> 8; } return sizeof(sockaddr_in6); diff --git a/src/Nazara/Network/Win32/IpAddressImpl.cpp b/src/Nazara/Network/Win32/IpAddressImpl.cpp index 257e50cf6..6003a4aaa 100644 --- a/src/Nazara/Network/Win32/IpAddressImpl.cpp +++ b/src/Nazara/Network/Win32/IpAddressImpl.cpp @@ -258,8 +258,9 @@ namespace Nz IpAddress::IPv6 address = ipAddress.ToIPv6(); for (unsigned int i = 0; i < 8; ++i) { - socketAddress->sin6_addr.s6_addr[i * 2 + 0] = htons(address[i]) >> 8; - socketAddress->sin6_addr.s6_addr[i * 2 + 1] = htons(address[i]) >> 0; + u_short addressPart = htons(address[i]); + socketAddress->sin6_addr.s6_addr[i * 2 + 0] = addressPart >> 0; + socketAddress->sin6_addr.s6_addr[i * 2 + 1] = addressPart >> 8; } return sizeof(sockaddr_in6);