summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkus Mittendrein <git@maxmitti.tk>2016-09-08 20:37:48 +0200
committerMarkus Mittendrein <git@maxmitti.tk>2016-09-08 20:37:48 +0200
commit5c32234ac93cad1c402edbf05dff363f5cbdc7c3 (patch)
treea8b4b1b63749a68dc0b016e9f1c604498318674b
parentaead19f320fa40518472b3fa1ee3cc14c0cec3b5 (diff)
downloadmanager-5c32234ac93cad1c402edbf05dff363f5cbdc7c3.tar.gz
manager-5c32234ac93cad1c402edbf05dff363f5cbdc7c3.zip
Handle multiline DCC-messages correctly
-rw-r--r--src/crsm.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/crsm.cpp b/src/crsm.cpp
index 1396da6..7f9bfbd 100644
--- a/src/crsm.cpp
+++ b/src/crsm.cpp
@@ -643,10 +643,13 @@ void CRSM::newDCCData()
{
QTcpSocket* socket = (QTcpSocket*)sender();
const DCCConnection& dccConnection = dccSocketConnections[socket];
- QString message = QString::fromUtf8(socket->readLine()).trimmed();
- if(message.length() > 0)
+ while(socket->bytesAvailable() > 0)
{
- handleIrcMessage(dccConnection.client, message, connection->nickName(), true, false);
+ QString message = QString::fromUtf8(socket->readLine()).trimmed();
+ if(message.length() > 0)
+ {
+ handleIrcMessage(dccConnection.client, message, connection->nickName(), true, false);
+ }
}
}