diff options
-rw-r--r-- | discord/discord.cpp | 3 | ||||
-rw-r--r-- | discord/objects.cpp | 2 | ||||
-rw-r--r-- | discord/objects.hpp | 2 |
3 files changed, 4 insertions, 3 deletions
diff --git a/discord/discord.cpp b/discord/discord.cpp index 298bb8a..ad4eb68 100644 --- a/discord/discord.cpp +++ b/discord/discord.cpp @@ -606,7 +606,8 @@ void DiscordClient::HandleGatewayGuildMemberUpdate(const GatewayMessage &msg) { void DiscordClient::HandleGatewayPresenceUpdate(const GatewayMessage &msg) { PresenceUpdateMessage data = msg.Data; auto cur = m_store.GetUser(data.User.at("id").get<Snowflake>()); - User::update_from_json(data.User, *cur); + if (cur != nullptr) + User::update_from_json(data.User, *cur); } void DiscordClient::HandleGatewayMessageUpdate(const GatewayMessage &msg) { diff --git a/discord/objects.cpp b/discord/objects.cpp index 0324ce3..1f6d109 100644 --- a/discord/objects.cpp +++ b/discord/objects.cpp @@ -150,7 +150,7 @@ void from_json(const nlohmann::json &j, ClientStatus &m) { void from_json(const nlohmann::json &j, PresenceUpdateMessage &m) { m.User = j.at("user"); - JS_D("guild_id", m.GuildID); + JS_O("guild_id", m.GuildID); JS_D("status", m.Status); // JS_D("activities", m.Activities); JS_D("client_status", m.ClientStatus); diff --git a/discord/objects.hpp b/discord/objects.hpp index 3b4491c..1e2cb27 100644 --- a/discord/objects.hpp +++ b/discord/objects.hpp @@ -213,7 +213,7 @@ struct ClientStatus { struct PresenceUpdateMessage { nlohmann::json User; // the client updates an existing object from this data - Snowflake GuildID; + Snowflake GuildID; // opt std::string Status; // std::vector<Activity> Activities; ClientStatus ClientStatus; |