diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/websockets/qwebsocket.cpp | 4 | ||||
-rw-r--r-- | src/websockets/qwebsocket_p.cpp | 7 | ||||
-rw-r--r-- | src/websockets/qwebsocketserver.cpp | 2 | ||||
-rw-r--r-- | src/websockets/qwebsocketserver_p.cpp | 7 | ||||
-rw-r--r-- | src/websockets/qwebsocketserver_p.h | 1 |
5 files changed, 18 insertions, 3 deletions
diff --git a/src/websockets/qwebsocket.cpp b/src/websockets/qwebsocket.cpp index 45394e3..6e60230 100644 --- a/src/websockets/qwebsocket.cpp +++ b/src/websockets/qwebsocket.cpp @@ -262,6 +262,8 @@ QWebSocket::QWebSocket(const QString &origin, QObject *parent) : QObject(*(new QWebSocketPrivate(origin, version, this)), parent) { + Q_D(QWebSocket); + d->init(); } /*! @@ -301,6 +303,8 @@ QWebSocket::QWebSocket(QTcpSocket *pTcpSocket, QWebSocketProtocol::Version version, QObject *parent) : QObject(*(new QWebSocketPrivate(pTcpSocket, version, this)), parent) { + Q_D(QWebSocket); + d->init(); } /*! diff --git a/src/websockets/qwebsocket_p.cpp b/src/websockets/qwebsocket_p.cpp index fe4dd8a..5d58fec 100644 --- a/src/websockets/qwebsocket_p.cpp +++ b/src/websockets/qwebsocket_p.cpp @@ -111,7 +111,6 @@ QWebSocketPrivate::QWebSocketPrivate(const QString &origin, QWebSocketProtocol:: m_dataProcessor(), m_configuration() { - init(); } /*! @@ -142,8 +141,6 @@ QWebSocketPrivate::QWebSocketPrivate(QTcpSocket *pTcpSocket, QWebSocketProtocol: m_dataProcessor(), m_configuration() { - init(); - makeConnections(m_pSocket.data()); } /*! @@ -154,6 +151,10 @@ void QWebSocketPrivate::init() Q_ASSERT(q_ptr); //TODO: need a better randomizer qsrand(static_cast<uint>(QDateTime::currentMSecsSinceEpoch())); + + if (m_pSocket) { + makeConnections(m_pSocket.data()); + } } /*! diff --git a/src/websockets/qwebsocketserver.cpp b/src/websockets/qwebsocketserver.cpp index 10ee83e..a8a25be 100644 --- a/src/websockets/qwebsocketserver.cpp +++ b/src/websockets/qwebsocketserver.cpp @@ -236,6 +236,8 @@ QWebSocketServer::QWebSocketServer(const QString &serverName, SslMode secureMode #ifdef QT_NO_SSL Q_UNUSED(secureMode) #endif + Q_D(QWebSocketServer); + d->init(); } /*! diff --git a/src/websockets/qwebsocketserver_p.cpp b/src/websockets/qwebsocketserver_p.cpp index 912c66e..6797cbc 100644 --- a/src/websockets/qwebsocketserver_p.cpp +++ b/src/websockets/qwebsocketserver_p.cpp @@ -73,6 +73,13 @@ QWebSocketServerPrivate::QWebSocketServerPrivate(const QString &serverName, m_errorString() { Q_ASSERT(pWebSocketServer); +} + +/*! + \internal + */ +void QWebSocketServerPrivate::init() +{ if (m_secureMode == NonSecureMode) { m_pTcpServer = new QTcpServer(); if (Q_LIKELY(m_pTcpServer)) diff --git a/src/websockets/qwebsocketserver_p.h b/src/websockets/qwebsocketserver_p.h index a9aa880..c4afd3d 100644 --- a/src/websockets/qwebsocketserver_p.h +++ b/src/websockets/qwebsocketserver_p.h @@ -85,6 +85,7 @@ public: QWebSocketServer * const pWebSocketServer); virtual ~QWebSocketServerPrivate(); + void init(); void close(); QString errorString() const; bool hasPendingConnections() const; |