diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2024-01-14 21:47:28 -0500 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2024-01-14 21:47:28 -0500 |
commit | e9521ce7801eb2cb3b573bc85c2daeaab1003d26 (patch) | |
tree | 8199cb63cf148152842aafb997d6b91bfd2af828 /src | |
parent | af69c3d9f692fc0a975ff82540bc3c0e3b72bc5b (diff) | |
parent | eb09a5b2211ebfb37aff218250bc7e4aaffee5d0 (diff) | |
download | abaddon-portaudio-e9521ce7801eb2cb3b573bc85c2daeaab1003d26.tar.gz abaddon-portaudio-e9521ce7801eb2cb3b573bc85c2daeaab1003d26.zip |
Merge branch 'master' into classic-channels
Diffstat (limited to 'src')
-rw-r--r-- | src/discord/discord.cpp | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/src/discord/discord.cpp b/src/discord/discord.cpp index 607fce3..b69daea 100644 --- a/src/discord/discord.cpp +++ b/src/discord/discord.cpp @@ -2802,17 +2802,26 @@ void DiscordClient::StoreMessageData(Message &msg) { // no entry.id cannot be a guild even though sometimes it looks like it void DiscordClient::HandleReadyReadState(const ReadyEventData &data) { for (const auto &guild : data.Guilds) { - for (const auto &channel : *guild.Channels) - if (channel.LastMessageID.has_value()) - m_last_message_id[channel.ID] = *channel.LastMessageID; - for (const auto &thread : *guild.Threads) - if (thread.LastMessageID.has_value()) - m_last_message_id[thread.ID] = *thread.LastMessageID; + if (guild.Channels.has_value()) { + for (const auto &channel : *guild.Channels) { + if (channel.LastMessageID.has_value()) { + m_last_message_id[channel.ID] = *channel.LastMessageID; + } + } + } + if (guild.Threads.has_value()) { + for (const auto &thread : *guild.Threads) { + if (thread.LastMessageID.has_value()) { + m_last_message_id[thread.ID] = *thread.LastMessageID; + } + } + } } - for (const auto &channel : data.PrivateChannels) - if (channel.LastMessageID.has_value()) + for (const auto &channel : data.PrivateChannels) { + if (channel.LastMessageID.has_value()) { m_last_message_id[channel.ID] = *channel.LastMessageID; - + } + } for (const auto &entry : data.ReadState.Entries) { const auto it = m_last_message_id.find(entry.ID); if (it == m_last_message_id.end()) continue; |