X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcore%2Fcoresession.cpp;h=0accebbf374f77c313365a66b8b605768ea79313;hb=a84b3ab2b92bc8c5ac504e5430eb81d05efc690e;hp=28a074f58c9a5e82d7da06da4971108e423545dd;hpb=902c95728306e5ba115de84800fc8d5d239c9d62;p=quassel.git diff --git a/src/core/coresession.cpp b/src/core/coresession.cpp index 28a074f5..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))); @@ -106,9 +105,9 @@ void CoreSession::connectToNetwork(QString network) { uint networkid = getNetworkId(network); if(!servers.contains(networkid)) { Server *server = new Server(userId(), networkid, network); + servers[networkid] = server; attachServer(server); server->start(); - servers[networkid] = server; } emit connectToIrc(network); } @@ -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) {