diff options
| author | Joel Klinghed <the_jk@yahoo.com> | 2015-06-04 23:59:03 +0200 |
|---|---|---|
| committer | Joel Klinghed <the_jk@yahoo.com> | 2015-06-04 23:59:03 +0200 |
| commit | 0b8e0ca6e1e8d9a0e36e2e3c960c84a289822675 (patch) | |
| tree | 7922eb340c852a32fb5f0f4f3871955a592cf419 /src/sender_client.cc | |
| parent | 149aca58939a4a4fa8df47ba81dd835932378f1e (diff) | |
Fix sender and sender_client communication
Diffstat (limited to 'src/sender_client.cc')
| -rw-r--r-- | src/sender_client.cc | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/sender_client.cc b/src/sender_client.cc index c6129e9..f954a5c 100644 --- a/src/sender_client.cc +++ b/src/sender_client.cc @@ -67,22 +67,22 @@ private: } } else if (pos < 4 + channel.size()) { size_t const avail = 4 + channel.size() - pos; - ret = write(sock_, channel.data() + (pos - 4), avail); + ret = write(sock_, channel.data() + pos - 4, avail); if (ret > 0) { pos += ret; if (static_cast<size_t>(ret) == avail) continue; } } else if (pos < 8 + channel.size()) { size_t const avail = 8 + channel.size() - pos; - ret = write(sock_, - reinterpret_cast<char*>(&size2) + pos, avail); + ret = write(sock_, reinterpret_cast<char*>(&size2) + + pos - 4 - channel.size(), avail); if (ret > 0) { pos += ret; if (static_cast<size_t>(ret) == avail) continue; } } else { size_t const avail = len - pos; - ret = write(sock_, message.data() + (pos - 8 - channel.size()), + ret = write(sock_, message.data() + pos - 8 - channel.size(), avail); if (ret > 0) { pos += ret; |
