Fix compressed buffer not being emptied instantly in TcpPacketSocket::writeData
would only cause an issue when using sendAll, resulted in rarely not connecting
This commit is contained in:
parent
2d278e71c1
commit
c3de15c18d
@ -285,12 +285,14 @@ bool TcpPacketSocket::writeData() {
|
|||||||
m_outputBuffer.clear();
|
m_outputBuffer.clear();
|
||||||
|
|
||||||
m_compressedBuffer.append(compressed.ptr(), compressed.size());
|
m_compressedBuffer.append(compressed.ptr(), compressed.size());
|
||||||
|
do {
|
||||||
size_t written = m_socket->send(m_compressedBuffer.ptr(), m_compressedBuffer.size());
|
size_t written = m_socket->send(m_compressedBuffer.ptr(), m_compressedBuffer.size());
|
||||||
if (written > 0) {
|
if (written > 0) {
|
||||||
dataSent = true;
|
dataSent = true;
|
||||||
m_compressedBuffer.trimLeft(written);
|
m_compressedBuffer.trimLeft(written);
|
||||||
m_outgoingStats.mix(written);
|
m_outgoingStats.mix(written);
|
||||||
}
|
}
|
||||||
|
} while (!m_compressedBuffer.empty());
|
||||||
} else {
|
} else {
|
||||||
do {
|
do {
|
||||||
size_t written = m_socket->send(m_outputBuffer.ptr(), m_outputBuffer.size());
|
size_t written = m_socket->send(m_outputBuffer.ptr(), m_outputBuffer.size());
|
||||||
|
Loading…
Reference in New Issue
Block a user