diff options
| author | Christian Klinger | 2016-09-12 12:02:10 +0200 |
|---|---|---|
| committer | Christian Klinger | 2016-09-12 12:02:10 +0200 |
| commit | 16bf058f598b308d53fd2da095f7373adaec0a13 (patch) | |
| tree | 88a098fa59e00ac23e62ac6df9daaebedc081756 /src/client/net | |
| parent | Added support for a label field inside each room section + UTF8 (diff) | |
| parent | Fix infinite loop when receiving incomplete headers (diff) | |
| download | pvs2-16bf058f598b308d53fd2da095f7373adaec0a13.tar.gz pvs2-16bf058f598b308d53fd2da095f7373adaec0a13.tar.xz pvs2-16bf058f598b308d53fd2da095f7373adaec0a13.zip | |
Merge branch 'master' of git.openslx.org:pvs2
Diffstat (limited to 'src/client/net')
| -rw-r--r-- | src/client/net/serverconnection.cpp | 6 | ||||
| -rw-r--r-- | src/client/net/serverdiscovery.cpp | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/client/net/serverconnection.cpp b/src/client/net/serverconnection.cpp index c6ffd8c..54d95bc 100644 --- a/src/client/net/serverconnection.cpp +++ b/src/client/net/serverconnection.cpp @@ -379,15 +379,17 @@ void ServerConnection::sock_dataArrival() return; } - while (_socket->bytesAvailable()) + while (_socket->bytesAvailable() > 0) { bool retval; retval = _fromServer.readMessage(_socket); // let the message read data from socket - if (!retval) // error parsing msg, disconnect client! + if (retval == NM_READ_FAILED) // error parsing msg, disconnect client! { this->disconnectFromServer(); return; } + if (retval == NM_READ_INCOMPLETE) + return; if (_fromServer.readComplete()) // message is complete { this->handleMsg(); diff --git a/src/client/net/serverdiscovery.cpp b/src/client/net/serverdiscovery.cpp index 5dba327..1d1e891 100644 --- a/src/client/net/serverdiscovery.cpp +++ b/src/client/net/serverdiscovery.cpp @@ -161,7 +161,7 @@ void ServerDiscovery::onUdpReadyRead() continue; _packet.reset(); - if (!_packet.readMessage(data, (quint32)size)) + if (_packet.readMessage(data, (quint32)size) != NM_READ_OK) continue; // Valid packet, process it: |
