diff options
Diffstat (limited to 'src/dbus/qdbusserver.cpp')
-rw-r--r-- | src/dbus/qdbusserver.cpp | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/src/dbus/qdbusserver.cpp b/src/dbus/qdbusserver.cpp index cf1b6e9665..6c1b4c10ef 100644 --- a/src/dbus/qdbusserver.cpp +++ b/src/dbus/qdbusserver.cpp @@ -1,6 +1,7 @@ /**************************************************************************** ** ** Copyright (C) 2015 The Qt Company Ltd. +** Copyright (C) 2015 Intel Corporation. ** Contact: http://www.qt.io/licensing/ ** ** This file is part of the QtDBus module of the Qt Toolkit. @@ -62,13 +63,10 @@ QDBusServer::QDBusServer(const QString &address, QObject *parent) d = 0; return; } - d = new QDBusConnectionPrivate(this); - QObject::connect(d, SIGNAL(newServerConnection(QDBusConnection)), - this, SIGNAL(newConnection(QDBusConnection))); - - QDBusErrorInternal error; - d->setServer(q_dbus_server_listen(address.toUtf8().constData(), error), error); + emit QDBusConnectionManager::instance()->serverRequested(address, this); + QObject::connect(d, SIGNAL(newServerConnection(QDBusConnectionPrivate*)), + this, SLOT(_q_newConnection(QDBusConnectionPrivate*)), Qt::QueuedConnection); } /*! @@ -81,22 +79,19 @@ QDBusServer::QDBusServer(QObject *parent) { #ifdef Q_OS_UNIX // Use Unix sockets on Unix systems only - static const char address[] = "unix:tmpdir=/tmp"; + const QString address = QStringLiteral("unix:tmpdir=/tmp"); #else - static const char address[] = "tcp:"; + const QString address = QStringLiteral("tcp:"); #endif if (!qdbus_loadLibDBus()) { d = 0; return; } - d = new QDBusConnectionPrivate(this); - - QObject::connect(d, SIGNAL(newServerConnection(QDBusConnection)), - this, SIGNAL(newConnection(QDBusConnection))); - QDBusErrorInternal error; - d->setServer(q_dbus_server_listen(address, error), error); + emit QDBusConnectionManager::instance()->serverRequested(address, this); + QObject::connect(d, SIGNAL(newServerConnection(QDBusConnectionPrivate*)), + this, SLOT(_q_newConnection(QDBusConnectionPrivate*)), Qt::QueuedConnection); } /*! @@ -186,4 +181,6 @@ bool QDBusServer::isAnonymousAuthenticationAllowed() const QT_END_NAMESPACE +#include "moc_qdbusserver.cpp" + #endif // QT_NO_DBUS |