diff options
Diffstat (limited to 'src/network/socket/qlocalserver.cpp')
-rw-r--r-- | src/network/socket/qlocalserver.cpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/network/socket/qlocalserver.cpp b/src/network/socket/qlocalserver.cpp index d96f540148..72b6d5ec90 100644 --- a/src/network/socket/qlocalserver.cpp +++ b/src/network/socket/qlocalserver.cpp @@ -265,9 +265,27 @@ bool QLocalServer::hasPendingConnections() const */ void QLocalServer::incomingConnection(quintptr socketDescriptor) { - Q_D(QLocalServer); QLocalSocket *socket = new QLocalSocket(this); socket->setSocketDescriptor(socketDescriptor); + addPendingConnection(socket); +} + +/*! + This function is called by QLocalServer::incomingConnection() + to add the \a socket to the list of pending incoming connections. + + \note Don't forget to call this member from reimplemented + incomingConnection() if you do not want to break the + Pending Connections mechanism. This function emits the + newConnection() signal after the socket has been + added. + + \sa incomingConnection(), newConnection() + \since 6.8 +*/ +void QLocalServer::addPendingConnection(QLocalSocket *socket) +{ + Q_D(QLocalServer); d->pendingConnections.enqueue(socket); emit newConnection(); } |