diff -r 6a79856cb8f5 -r 45dbd7582a5a libpurple/protocols/oscar/peer_proxy.c --- a/libpurple/protocols/oscar/peer_proxy.c Wed Oct 02 17:58:38 2019 -0400 +++ b/libpurple/protocols/oscar/peer_proxy.c Wed Oct 02 18:01:33 2019 -0400 @@ -270,8 +270,7 @@ } /* If this frame has a payload then attempt to read it */ - if (frame->payload.len - frame->payload.offset > 0) - { + if (frame->payload.offset < frame->payload.len) { /* Read data into the temporary buffer until it is complete */ read = recv(conn->fd, &frame->payload.data[frame->payload.offset],