X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fclient.cpp;h=0c71befbfd2a8c3e26f362dad799369544efb83e;hp=f8627d024fcf0e10a2454846041ae03422a36f2c;hb=bd5414d8bfe2be18ba051d4bbf936e9ead0cdf66;hpb=7fe7ca0631d2e8327351806947a1e030eb203cf7 diff --git a/src/client/client.cpp b/src/client/client.cpp index f8627d02..0c71befb 100644 --- a/src/client/client.cpp +++ b/src/client/client.cpp @@ -101,6 +101,7 @@ Client::Client(QObject *parent) _backlogManager(new ClientBacklogManager(this)), _bufferViewManager(0), _bufferViewOverlay(new BufferViewOverlay(this)), + _coreInfo(nullptr), _dccConfig(0), _ircListHelper(new ClientIrcListHelper(this)), _inputHandler(0), @@ -400,6 +401,11 @@ void Client::setSyncedToCore() SignalProxy *p = signalProxy(); p->synchronize(bufferSyncer()); + // create CoreInfo + Q_ASSERT(!_coreInfo); + _coreInfo = new CoreInfo(this); + p->synchronize(coreInfo()); + // create a new BufferViewManager Q_ASSERT(!_bufferViewManager); _bufferViewManager = new ClientBufferViewManager(p, this); @@ -500,6 +506,11 @@ void Client::setDisconnectedFromCore() _bufferSyncer = 0; } + if (_coreInfo) { + _coreInfo->deleteLater(); + _coreInfo = nullptr; + } + if (_bufferViewManager) { _bufferViewManager->deleteLater(); _bufferViewManager = 0;