X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fclient%2Fclient.cpp;h=9611f71b28fede4fa986d37c752db9bd378cdb76;hb=6a590134d0ceca46e83a6b5b24e44550b68e9b4b;hp=ce734cc5aa09b79a1379734448f9d38c512f76c5;hpb=332069a1830ed3a055ac6f2d7661bae1cc83e40c;p=quassel.git diff --git a/src/client/client.cpp b/src/client/client.cpp index ce734cc5..9611f71b 100644 --- a/src/client/client.cpp +++ b/src/client/client.cpp @@ -28,7 +28,6 @@ #include "bufferviewmanager.h" #include "clientbacklogmanager.h" #include "clientirclisthelper.h" -#include "global.h" #include "identity.h" #include "ircchannel.h" #include "ircuser.h" @@ -52,8 +51,11 @@ Client *Client::instance() { } void Client::destroy() { - //delete instanceptr; - instanceptr->deleteLater(); + if(instanceptr) { + delete instanceptr->mainUi; + instanceptr->deleteLater(); + instanceptr = 0; + } } void Client::init(AbstractUi *ui) { @@ -294,6 +296,7 @@ void Client::disconnectFromCore() { emit disconnected(); emit coreConnectionStateChanged(false); + backlogManager()->reset(); messageProcessor()->reset(); // Clear internal data. Hopefully nothing relies on it at this point.