2
0
mirror of https://github.com/kotatogram/kotatogram-desktop synced 2025-09-02 15:45:12 +00:00

Fix assertion violation in marking history as read.

This commit is contained in:
John Preston
2019-05-01 16:43:16 +04:00
parent d9ad3a4bbe
commit 4e8c57a861
2 changed files with 11 additions and 2 deletions

View File

@@ -6001,6 +6001,11 @@ void ApiWrap::sendReadRequest(not_null<PeerData*> peer, MsgId upTo) {
_readRequests.remove(peer);
if (const auto next = _readRequestsPending.take(peer)) {
sendReadRequest(peer, *next);
} else if (const auto history
= _session->data().historyLoaded(peer)) {
if (!history->unreadCountKnown()) {
requestDialogEntry(history);
}
}
};
if (const auto channel = peer->asChannel()) {

View File

@@ -1553,7 +1553,9 @@ void History::readClientSideMessages() {
MsgId History::readInbox() {
const auto upTo = msgIdForRead();
if (unreadCountKnown()) {
setUnreadCount(0);
}
readClientSideMessages();
if (upTo) {
inboxRead(upTo);
@@ -3022,7 +3024,9 @@ void History::clear(ClearType type) {
} else {
_notifications.clear();
owner().notifyHistoryCleared(this);
if (unreadCountKnown()) {
setUnreadCount(0);
}
if (type == ClearType::DeleteChat) {
setLastMessage(nullptr);
} else if (_lastMessage && *_lastMessage) {