diff options
-rw-r--r-- | mthemedaemon/mthemedaemonserver.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/mthemedaemon/mthemedaemonserver.cpp b/mthemedaemon/mthemedaemonserver.cpp index 579b8c55..45d3081f 100644 --- a/mthemedaemon/mthemedaemonserver.cpp +++ b/mthemedaemon/mthemedaemonserver.cpp @@ -94,11 +94,12 @@ MThemeDaemonServer::~MThemeDaemonServer() // remove all registered clients while (registeredClients.count() > 0) { MThemeDaemonClient *client = registeredClients.begin().value(); + QLocalSocket *socket = registeredClients.begin().key(); + socket->disconnect(this); daemon.removeClient(client); delete client; registeredClients.erase(registeredClients.begin()); } - } void MThemeDaemonServer::loadPriorities(const QString& filename) @@ -117,8 +118,8 @@ void MThemeDaemonServer::clientConnected() { while (server.hasPendingConnections()) { QLocalSocket *socket = server.nextPendingConnection(); - QObject::connect(socket, SIGNAL(disconnected()), SLOT(clientDisconnected())); - QObject::connect(socket, SIGNAL(readyRead()), SLOT(clientDataAvailable())); + QObject::connect(socket, SIGNAL(disconnected()), this, SLOT(clientDisconnected())); + QObject::connect(socket, SIGNAL(readyRead()), this, SLOT(clientDataAvailable())); } } |