X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcoresession.cpp;h=0accebbf374f77c313365a66b8b605768ea79313;hp=602ce78ea08303a075b0245e150255cd2f0432bb;hb=99fb0a0f1f66ae5117fa64cc204256e5b3a19499;hpb=894d66d1d86ccebf9df99e03bc3c174959e7ce76 diff --git a/src/core/coresession.cpp b/src/core/coresession.cpp index 602ce78e..0accebbf 100644 --- a/src/core/coresession.cpp +++ b/src/core/coresession.cpp @@ -38,7 +38,7 @@ CoreSession::CoreSession(UserId uid, Storage *_storage, QObject *parent) _signalProxy(new SignalProxy(SignalProxy::Server, 0, this)), storage(_storage) { - + QSettings s; s.beginGroup(QString("SessionData/%1").arg(user)); mutex.lock(); @@ -52,7 +52,6 @@ CoreSession::CoreSession(UserId uid, Storage *_storage, QObject *parent) p->attachSlot(SIGNAL(requestNetworkStates()), this, SLOT(serverStateRequested())); p->attachSlot(SIGNAL(requestConnect(QString)), this, SLOT(connectToNetwork(QString))); p->attachSlot(SIGNAL(sendInput(BufferInfo, QString)), this, SLOT(msgFromGui(BufferInfo, QString))); - p->attachSlot(SIGNAL(importOldBacklog()), storage, SLOT(importOldBacklog())); p->attachSlot(SIGNAL(requestBacklog(BufferInfo, QVariant, QVariant)), this, SLOT(sendBacklog(BufferInfo, QVariant, QVariant))); p->attachSignal(this, SIGNAL(displayMsg(Message))); p->attachSignal(this, SIGNAL(displayStatusMsg(QString, QString))); @@ -146,8 +145,9 @@ void CoreSession::serverConnected(uint networkid) { } void CoreSession::serverDisconnected(uint networkid) { - servers.remove(networkid); - delete servers[networkid]; + Q_ASSERT(servers.contains(networkid)); + servers.take(networkid)->deleteLater(); + Q_ASSERT(!servers.contains(networkid)); } void CoreSession::msgFromGui(BufferInfo bufid, QString msg) {