Fix Issue 22301 - Only use from if a packet was actually received

This commit is contained in:
RazvanN7 2021-09-13 14:02:55 +03:00
parent 6ee8dc52fe
commit 6eb14972ad

View file

@ -3119,25 +3119,17 @@ public:
from = createAddress();
socklen_t nameLen = from.nameLen;
version (Windows)
{
auto read = .recvfrom(sock, buf.ptr, capToInt(buf.length), cast(int) flags, from.name, &nameLen);
if (read >= 0)
{
from.setNameLen(nameLen);
assert(from.addressFamily == _family);
}
return read;
}
else
{
auto read = .recvfrom(sock, buf.ptr, buf.length, cast(int) flags, from.name, &nameLen);
if (read >= 0)
{
from.setNameLen(nameLen);
assert(from.addressFamily == _family);
}
return read;
if (read >= 0)
{
from.setNameLen(nameLen);
assert(from.addressFamily == _family);
}
return read;
}