From 193975d6cbb315d6a6da8a5596fc859570c81868 Mon Sep 17 00:00:00 2001 From: Jeremy Lainé Date: Thu, 7 Jun 2012 16:20:23 +0200 Subject: protect against null socket --- src/server/QXmppIncomingClient.cpp | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'src/server/QXmppIncomingClient.cpp') diff --git a/src/server/QXmppIncomingClient.cpp b/src/server/QXmppIncomingClient.cpp index 082531f6..ce6beec4 100644 --- a/src/server/QXmppIncomingClient.cpp +++ b/src/server/QXmppIncomingClient.cpp @@ -68,7 +68,11 @@ QXmppIncomingClientPrivate::QXmppIncomingClientPrivate(QXmppIncomingClient *qq) QString QXmppIncomingClientPrivate::origin() const { - return q->socket()->peerAddress().toString() + " " + QString::number(q->socket()->peerPort()); + QSslSocket *socket = q->socket(); + if (socket) + return socket->peerAddress().toString() + " " + QString::number(socket->peerPort()); + else + return ""; } /// Constructs a new incoming client stream. @@ -87,11 +91,13 @@ QXmppIncomingClient::QXmppIncomingClient(QSslSocket *socket, const QString &doma d = new QXmppIncomingClientPrivate(this); d->domain = domain; - check = connect(socket, SIGNAL(disconnected()), - this, SLOT(onSocketDisconnected())); - Q_ASSERT(check); + if (socket) { + check = connect(socket, SIGNAL(disconnected()), + this, SLOT(onSocketDisconnected())); + Q_ASSERT(check); - setSocket(socket); + setSocket(socket); + } info(QString("Incoming client connection from %1").arg(d->origin())); -- cgit v1.2.3