Block connection fixes for chat cleaner, use new Qt5 feature to stop accepting connections.
This commit is contained in:
@@ -78,13 +78,12 @@ CleanerServer::~CleanerServer()
|
|||||||
|
|
||||||
void CleanerServer::newCon()
|
void CleanerServer::newCon()
|
||||||
{
|
{
|
||||||
if(blockConnection) {
|
if(!blockConnection) {
|
||||||
tcpServer->nextPendingConnection()->close();
|
|
||||||
} else {
|
|
||||||
tcpSocket = tcpServer->nextPendingConnection();
|
tcpSocket = tcpServer->nextPendingConnection();
|
||||||
connect(tcpSocket, SIGNAL(readyRead()), this, SLOT(onRead()));
|
connect(tcpSocket, SIGNAL(readyRead()), this, SLOT(onRead()));
|
||||||
connect(tcpSocket, SIGNAL(stateChanged(QAbstractSocket::SocketState)), this, SLOT(socketStateChanged(QAbstractSocket::SocketState)));
|
connect(tcpSocket, SIGNAL(stateChanged(QAbstractSocket::SocketState)), this, SLOT(socketStateChanged(QAbstractSocket::SocketState)));
|
||||||
blockConnection = true;
|
blockConnection = true;
|
||||||
|
tcpServer->pauseAccepting();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -131,7 +130,6 @@ void CleanerServer::onRead()
|
|||||||
if (error) {
|
if (error) {
|
||||||
qDebug() << "Error handling packets from client.";
|
qDebug() << "Error handling packets from client.";
|
||||||
tcpSocket->close();
|
tcpSocket->close();
|
||||||
blockConnection = false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* char buf[1024];
|
/* char buf[1024];
|
||||||
@@ -206,9 +204,11 @@ bool CleanerServer::handleMessage(ChatCleanerMessage &msg)
|
|||||||
|
|
||||||
void CleanerServer::socketStateChanged(QAbstractSocket::SocketState state)
|
void CleanerServer::socketStateChanged(QAbstractSocket::SocketState state)
|
||||||
{
|
{
|
||||||
|
|
||||||
qDebug() << "Socket state changed to: " << QAbstractSocket::UnconnectedState;
|
qDebug() << "Socket state changed to: " << QAbstractSocket::UnconnectedState;
|
||||||
if(state == QAbstractSocket::UnconnectedState) blockConnection = false;
|
if (state == QAbstractSocket::UnconnectedState) {
|
||||||
|
blockConnection = false;
|
||||||
|
tcpServer->resumeAccepting();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void CleanerServer::refreshConfig()
|
void CleanerServer::refreshConfig()
|
||||||
|
|||||||
Reference in New Issue
Block a user