summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesus Fernandez <jesus.fernandez@qt.io>2018-08-10 12:48:47 +0200
committerJesus Fernandez <Jesus.Fernandez@qt.io>2018-08-14 08:30:14 +0000
commit5425435759242367fb40f90c4aef5af3e24e2854 (patch)
treea9d46275001f2c82121333b52d28ce42efd9cb9c
parent85e345a38709026d4d82c67b9016338675851249 (diff)
downloadqtwebsockets-5425435759242367fb40f90c4aef5af3e24e2854.tar.gz
Use QObjectPrivate::q_ptr instead of shadowing it
Some private classes had a q_ptr pointer shadowing the QObjectPrivate::q_ptr pointer. Q_Q casts the QObjectPrivate::q_ptr pointer to match the public class so there is no need to store a different pointer. Change-Id: I8f5c4323b1dcf45a9796c0dd9f522bdbc63add18 Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
-rw-r--r--src/websockets/qwebsocket.cpp4
-rw-r--r--src/websockets/qwebsocket_p.cpp15
-rw-r--r--src/websockets/qwebsocket_p.h9
-rw-r--r--src/websockets/qwebsocketserver.cpp6
-rw-r--r--src/websockets/qwebsocketserver_p.cpp21
-rw-r--r--src/websockets/qwebsocketserver_p.h7
6 files changed, 25 insertions, 37 deletions
diff --git a/src/websockets/qwebsocket.cpp b/src/websockets/qwebsocket.cpp
index b9c6cc0..ade1eb4 100644
--- a/src/websockets/qwebsocket.cpp
+++ b/src/websockets/qwebsocket.cpp
@@ -297,7 +297,7 @@ QT_BEGIN_NAMESPACE
QWebSocket::QWebSocket(const QString &origin,
QWebSocketProtocol::Version version,
QObject *parent) :
- QObject(*(new QWebSocketPrivate(origin, version, this)), parent)
+ QObject(*(new QWebSocketPrivate(origin, version)), parent)
{
Q_D(QWebSocket);
d->init();
@@ -340,7 +340,7 @@ QAbstractSocket::SocketError QWebSocket::error() const
*/
QWebSocket::QWebSocket(QTcpSocket *pTcpSocket,
QWebSocketProtocol::Version version, QObject *parent) :
- QObject(*(new QWebSocketPrivate(pTcpSocket, version, this)), parent)
+ QObject(*(new QWebSocketPrivate(pTcpSocket, version)), parent)
{
Q_D(QWebSocket);
d->init();
diff --git a/src/websockets/qwebsocket_p.cpp b/src/websockets/qwebsocket_p.cpp
index 9b27ad2..f005c17 100644
--- a/src/websockets/qwebsocket_p.cpp
+++ b/src/websockets/qwebsocket_p.cpp
@@ -87,10 +87,8 @@ QWebSocketConfiguration::QWebSocketConfiguration() :
/*!
\internal
*/
-QWebSocketPrivate::QWebSocketPrivate(const QString &origin, QWebSocketProtocol::Version version,
- QWebSocket *pWebSocket) :
+QWebSocketPrivate::QWebSocketPrivate(const QString &origin, QWebSocketProtocol::Version version) :
QObjectPrivate(),
- q_ptr(pWebSocket),
m_pSocket(nullptr),
m_errorString(),
m_version(version),
@@ -120,10 +118,8 @@ QWebSocketPrivate::QWebSocketPrivate(const QString &origin, QWebSocketProtocol::
/*!
\internal
*/
-QWebSocketPrivate::QWebSocketPrivate(QTcpSocket *pTcpSocket, QWebSocketProtocol::Version version,
- QWebSocket *pWebSocket) :
+QWebSocketPrivate::QWebSocketPrivate(QTcpSocket *pTcpSocket, QWebSocketProtocol::Version version) :
QObjectPrivate(),
- q_ptr(pWebSocket),
m_pSocket(pTcpSocket),
m_errorString(pTcpSocket->errorString()),
m_version(version),
@@ -416,7 +412,7 @@ void QWebSocketPrivate::open(const QNetworkRequest &request, bool mask)
setErrorString(message);
Q_EMIT q->error(QAbstractSocket::UnsupportedSocketOperationError);
} else {
- QSslSocket *sslSocket = new QSslSocket(q_ptr);
+ QSslSocket *sslSocket = new QSslSocket(q);
m_pSocket = sslSocket;
if (Q_LIKELY(m_pSocket)) {
m_pSocket->setSocketOption(QAbstractSocket::LowDelayOption, 1);
@@ -445,7 +441,7 @@ void QWebSocketPrivate::open(const QNetworkRequest &request, bool mask)
} else
#endif
if (url.scheme() == QStringLiteral("ws")) {
- m_pSocket = new QTcpSocket(q_ptr);
+ m_pSocket = new QTcpSocket(q);
if (Q_LIKELY(m_pSocket)) {
m_pSocket->setSocketOption(QAbstractSocket::LowDelayOption, 1);
m_pSocket->setSocketOption(QAbstractSocket::KeepAliveOption, 1);
@@ -710,6 +706,7 @@ QByteArray QWebSocketPrivate::getFrameHeader(QWebSocketProtocol::OpCode opCode,
quint64 payloadLength, quint32 maskingKey,
bool lastFrame)
{
+ Q_Q(QWebSocket);
QByteArray header;
bool ok = payloadLength <= 0x7FFFFFFFFFFFFFFFULL;
@@ -743,7 +740,7 @@ QByteArray QWebSocketPrivate::getFrameHeader(QWebSocketProtocol::OpCode opCode,
}
} else {
setErrorString(QStringLiteral("WebSocket::getHeader: payload too big!"));
- Q_EMIT q_ptr->error(QAbstractSocket::DatagramTooLargeError);
+ Q_EMIT q->error(QAbstractSocket::DatagramTooLargeError);
}
return header;
diff --git a/src/websockets/qwebsocket_p.h b/src/websockets/qwebsocket_p.h
index 91f8ad2..73f2745 100644
--- a/src/websockets/qwebsocket_p.h
+++ b/src/websockets/qwebsocket_p.h
@@ -64,6 +64,7 @@
#include <QtCore/QTime>
#include <private/qobject_p.h>
+#include "qwebsocket.h"
#include "qwebsocketprotocol.h"
#include "qwebsocketdataprocessor_p.h"
#include "qdefaultmaskgenerator_p.h"
@@ -102,8 +103,7 @@ class QWebSocketPrivate : public QObjectPrivate
public:
Q_DECLARE_PUBLIC(QWebSocket)
explicit QWebSocketPrivate(const QString &origin,
- QWebSocketProtocol::Version version,
- QWebSocket * const pWebSocket);
+ QWebSocketProtocol::Version version);
~QWebSocketPrivate() override;
void init();
@@ -155,11 +155,8 @@ public:
void open(const QNetworkRequest &request, bool mask);
void ping(const QByteArray &payload);
- QWebSocket * const q_ptr;
-
private:
- QWebSocketPrivate(QTcpSocket *pTcpSocket, QWebSocketProtocol::Version version,
- QWebSocket *pWebSocket);
+ QWebSocketPrivate(QTcpSocket *pTcpSocket, QWebSocketProtocol::Version version);
void setVersion(QWebSocketProtocol::Version version);
void setResourceName(const QString &resourceName);
void setRequest(const QNetworkRequest &request);
diff --git a/src/websockets/qwebsocketserver.cpp b/src/websockets/qwebsocketserver.cpp
index 5111bfd..7368596 100644
--- a/src/websockets/qwebsocketserver.cpp
+++ b/src/websockets/qwebsocketserver.cpp
@@ -253,11 +253,11 @@ QWebSocketServer::QWebSocketServer(const QString &serverName, SslMode secureMode
#ifndef QT_NO_SSL
(secureMode == SecureMode) ?
QWebSocketServerPrivate::SecureMode :
- QWebSocketServerPrivate::NonSecureMode,
+ QWebSocketServerPrivate::NonSecureMode
#else
- QWebSocketServerPrivate::NonSecureMode,
+ QWebSocketServerPrivate::NonSecureMode
#endif
- this)), parent)
+ )), parent)
{
#ifdef QT_NO_SSL
Q_UNUSED(secureMode)
diff --git a/src/websockets/qwebsocketserver_p.cpp b/src/websockets/qwebsocketserver_p.cpp
index 59b50e7..f3e7eac 100644
--- a/src/websockets/qwebsocketserver_p.cpp
+++ b/src/websockets/qwebsocketserver_p.cpp
@@ -65,10 +65,8 @@ const int MAX_HEADERLINES = 100; //maximum number of http request hea
\internal
*/
QWebSocketServerPrivate::QWebSocketServerPrivate(const QString &serverName,
- QWebSocketServerPrivate::SslMode secureMode,
- QWebSocketServer * const pWebSocketServer) :
+ QWebSocketServerPrivate::SslMode secureMode) :
QObjectPrivate(),
- q_ptr(pWebSocketServer),
m_pTcpServer(nullptr),
m_serverName(serverName),
m_secureMode(secureMode),
@@ -76,17 +74,16 @@ QWebSocketServerPrivate::QWebSocketServerPrivate(const QString &serverName,
m_error(QWebSocketProtocol::CloseCodeNormal),
m_errorString(),
m_maxPendingConnections(30)
-{
- Q_ASSERT(pWebSocketServer);
-}
+{}
/*!
\internal
*/
void QWebSocketServerPrivate::init()
{
+ Q_Q(QWebSocketServer);
if (m_secureMode == NonSecureMode) {
- m_pTcpServer = new QTcpServer(q_ptr);
+ m_pTcpServer = new QTcpServer(q);
if (Q_LIKELY(m_pTcpServer))
QObjectPrivate::connect(m_pTcpServer, &QTcpServer::newConnection,
this, &QWebSocketServerPrivate::onNewConnection);
@@ -94,24 +91,24 @@ void QWebSocketServerPrivate::init()
qFatal("Could not allocate memory for tcp server.");
} else {
#ifndef QT_NO_SSL
- QSslServer *pSslServer = new QSslServer(q_ptr);
+ QSslServer *pSslServer = new QSslServer(q);
m_pTcpServer = pSslServer;
if (Q_LIKELY(m_pTcpServer)) {
QObjectPrivate::connect(pSslServer, &QSslServer::newEncryptedConnection,
this, &QWebSocketServerPrivate::onNewConnection,
Qt::QueuedConnection);
QObject::connect(pSslServer, &QSslServer::peerVerifyError,
- q_ptr, &QWebSocketServer::peerVerifyError);
+ q, &QWebSocketServer::peerVerifyError);
QObject::connect(pSslServer, &QSslServer::sslErrors,
- q_ptr, &QWebSocketServer::sslErrors);
+ q, &QWebSocketServer::sslErrors);
QObject::connect(pSslServer, &QSslServer::preSharedKeyAuthenticationRequired,
- q_ptr, &QWebSocketServer::preSharedKeyAuthenticationRequired);
+ q, &QWebSocketServer::preSharedKeyAuthenticationRequired);
}
#else
qFatal("SSL not supported on this platform.");
#endif
}
- QObject::connect(m_pTcpServer, &QTcpServer::acceptError, q_ptr, &QWebSocketServer::acceptError);
+ QObject::connect(m_pTcpServer, &QTcpServer::acceptError, q, &QWebSocketServer::acceptError);
}
/*!
diff --git a/src/websockets/qwebsocketserver_p.h b/src/websockets/qwebsocketserver_p.h
index b34bb72..be7744f 100644
--- a/src/websockets/qwebsocketserver_p.h
+++ b/src/websockets/qwebsocketserver_p.h
@@ -55,6 +55,7 @@
#include <QtCore/QString>
#include <QtNetwork/QHostAddress>
#include <private/qobject_p.h>
+#include "qwebsocketserver.h"
#include "qwebsocket.h"
#ifndef QT_NO_SSL
@@ -66,7 +67,6 @@ QT_BEGIN_NAMESPACE
class QTcpServer;
class QTcpSocket;
-class QWebSocketServer;
class QWebSocketServerPrivate : public QObjectPrivate
{
@@ -80,8 +80,7 @@ public:
NonSecureMode
};
- explicit QWebSocketServerPrivate(const QString &serverName, SslMode secureMode,
- QWebSocketServer * const pWebSocketServer);
+ explicit QWebSocketServerPrivate(const QString &serverName, SslMode secureMode);
~QWebSocketServerPrivate() override;
void init();
@@ -123,8 +122,6 @@ public:
void handleConnection(QTcpSocket *pTcpSocket) const;
- QWebSocketServer * const q_ptr;
-
private:
QTcpServer *m_pTcpServer;
QString m_serverName;