diff options
-rw-r--r-- | .qmake.conf | 2 | ||||
-rw-r--r-- | src/websockets/qwebsocketserver_p.cpp | 13 |
2 files changed, 9 insertions, 6 deletions
diff --git a/.qmake.conf b/.qmake.conf index ffdb3bf..c6f1702 100644 --- a/.qmake.conf +++ b/.qmake.conf @@ -3,4 +3,4 @@ load(qt_build_config) CONFIG += warning_clean DEFINES += QT_NO_FOREACH -MODULE_VERSION = 5.13.0 +MODULE_VERSION = 5.14.0 diff --git a/src/websockets/qwebsocketserver_p.cpp b/src/websockets/qwebsocketserver_p.cpp index 3a38c4b..4c3eeaf 100644 --- a/src/websockets/qwebsocketserver_p.cpp +++ b/src/websockets/qwebsocketserver_p.cpp @@ -390,8 +390,10 @@ void QWebSocketServerPrivate::onNewConnection() */ void QWebSocketServerPrivate::onSocketDisconnected() { - if (Q_LIKELY(currentSender)) { - QTcpSocket *pTcpSocket = qobject_cast<QTcpSocket*>(currentSender->sender); + Q_Q(QWebSocketServer); + QObject *sender = q->sender(); + if (Q_LIKELY(sender)) { + QTcpSocket *pTcpSocket = qobject_cast<QTcpSocket*>(sender); if (Q_LIKELY(pTcpSocket)) pTcpSocket->deleteLater(); } @@ -402,10 +404,12 @@ void QWebSocketServerPrivate::onSocketDisconnected() */ void QWebSocketServerPrivate::handshakeReceived() { - if (Q_UNLIKELY(!currentSender)) { + Q_Q(QWebSocketServer); + QObject *sender = q->sender(); + if (Q_UNLIKELY(!sender)) { return; } - QTcpSocket *pTcpSocket = qobject_cast<QTcpSocket*>(currentSender->sender); + QTcpSocket *pTcpSocket = qobject_cast<QTcpSocket*>(sender); if (Q_UNLIKELY(!pTcpSocket)) { return; } @@ -423,7 +427,6 @@ void QWebSocketServerPrivate::handshakeReceived() } disconnect(pTcpSocket, &QTcpSocket::readyRead, this, &QWebSocketServerPrivate::handshakeReceived); - Q_Q(QWebSocketServer); bool success = false; bool isSecure = (m_secureMode == SecureMode); |