From 82a413ace68cb367cb7cd612611f0dc05f7b1b98 Mon Sep 17 00:00:00 2001 From: Sindre Langhus Date: Thu, 4 May 2017 18:16:33 +0200 Subject: [PATCH] Fix for empty user objects after GUILD_MEMBER_REMOVE (#641) * Made GetOrCreateUser always call AddRef and added check to PRESENCE_UPDATE to avoid readding users who have been removed from guilds * Removed AddRef as per dev guild discussion --- src/Discord.Net.WebSocket/DiscordSocketClient.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Discord.Net.WebSocket/DiscordSocketClient.cs b/src/Discord.Net.WebSocket/DiscordSocketClient.cs index 5e19e14e6..4476b78c4 100644 --- a/src/Discord.Net.WebSocket/DiscordSocketClient.cs +++ b/src/Discord.Net.WebSocket/DiscordSocketClient.cs @@ -1328,7 +1328,13 @@ namespace Discord.WebSocket var user = guild.GetUser(data.User.Id); if (user == null) + { + if (data.Status == UserStatus.Offline) + { + return; + } user = guild.AddOrUpdateUser(data); + } else { var globalBefore = user.GlobalUser.Clone();