X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fclientbacklogmanager.cpp;h=518ac243b5b64358eb585627b40758dd28915d89;hp=f28913fc6cd741ec64f43b28ae208c89cf8f6ce1;hb=eb8ee27deb8346dbf9e8515b0cceefd58cda971b;hpb=8f0946673bc3edc84b6f13e16cbe8ece912b4a3b diff --git a/src/client/clientbacklogmanager.cpp b/src/client/clientbacklogmanager.cpp index f28913fc..518ac243 100644 --- a/src/client/clientbacklogmanager.cpp +++ b/src/client/clientbacklogmanager.cpp @@ -27,6 +27,8 @@ #include +#include + ClientBacklogManager::ClientBacklogManager(QObject *parent) : BacklogManager(parent), _requester(0) @@ -40,6 +42,8 @@ void ClientBacklogManager::receiveBacklog(BufferId bufferId, int lastMsgs, int o if(msgs.isEmpty()) return; + emit messagesReceived(bufferId, msgs.count()); + MessageList msglist; foreach(QVariant v, msgs) { Message msg = v.value(); @@ -79,9 +83,7 @@ void ClientBacklogManager::stopBuffering() { Q_ASSERT(_requester); dispatchMessages(_requester->bufferedMessages(), true); - - delete _requester; - _requester = 0; + reset(); } bool ClientBacklogManager::isBuffering() { @@ -99,3 +101,8 @@ void ClientBacklogManager::dispatchMessages(const MessageList &messages, bool so emit messagesProcessed(tr("Processed %1 messages in %2 seconds.").arg(msgs.count()).arg((float)(end_t - start_t) / CLOCKS_PER_SEC)); } + +void ClientBacklogManager::reset() { + delete _requester; + _requester = 0; +}