summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/client.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/server/client.cpp b/src/server/client.cpp
index c59100e..fbb451d 100644
--- a/src/server/client.cpp
+++ b/src/server/client.cpp
@@ -81,19 +81,17 @@ UP<SRecvData> Client::read(std::optional<std::function<bool(const SRecvData &)>>
recvData->data.resize(recvData->size);
ssize_t size = recv(m_sockfd->get(), &recvData->data[0], recvData->size, 0);
+ m_szReading.reset();
if (size < 0 || size == 0) {
recvData->good = false;
- if (cb && !(*cb)(*recvData)) {
- m_szReading.reset();
+ if (cb && !(*cb)(*recvData))
return nullptr;
- }
} else {
recvData->data.resize(size);
recvData->good = true;
}
- m_szReading.reset();
return recvData;
}