diff --git a/tauth.cpp b/tauth.cpp index 62a6b87..d1cb01f 100644 --- a/tauth.cpp +++ b/tauth.cpp @@ -87,7 +87,13 @@ void TAuth::handleNewConnection() connect(m_clientSocket, &QTcpSocket::readyRead, this, &TAuth::readClientData); connect(m_clientSocket, &QTcpSocket::disconnected, - m_clientSocket, &QTcpSocket::deleteLater); + this, [this]() { + // Удаляем сокет после отключения + if (m_clientSocket) { + m_clientSocket->deleteLater(); + m_clientSocket = nullptr; + } + }); } } @@ -98,7 +104,6 @@ void TAuth::readClientData() QByteArray requestData = m_clientSocket->readAll(); QString request = QString::fromUtf8(requestData); - QStringList lines = request.split("\r\n"); if (lines.isEmpty()) return; @@ -118,7 +123,6 @@ void TAuth::readClientData() } } - // Обрабатываем обычный redirect if (document.startsWith("/redirect")) { handleRedirectRequest(document, m_clientSocket); @@ -237,6 +241,13 @@ void TAuth::handleRedirectRequest(const QString &request, QTcpSocket *socket) "
Token received. You can close this window.
\n" "