Browse Source

Add null checks to DiscordSocketClient's RemoveXXX functions

tags/1.0-rc
RogueException 8 years ago
parent
commit
c0db4bbfa3
1 changed files with 12 additions and 6 deletions
  1. +12
    -6
      src/Discord.Net/WebSocket/DiscordSocketClient.cs

+ 12
- 6
src/Discord.Net/WebSocket/DiscordSocketClient.cs View File

@@ -359,10 +359,13 @@ namespace Discord.WebSocket
internal SocketGuild RemoveGuild(ulong id)
{
var guild = DataStore.RemoveGuild(id);
foreach (var channel in guild.Channels)
guild.RemoveChannel(channel.Id);
foreach (var user in guild.Members)
guild.RemoveUser(user.Id);
if (guild != null)
{
foreach (var channel in guild.Channels)
guild.RemoveChannel(channel.Id);
foreach (var user in guild.Members)
guild.RemoveUser(user.Id);
}
return guild;
}
@@ -401,8 +404,11 @@ namespace Discord.WebSocket
internal ISocketChannel RemovePrivateChannel(ulong id)
{
var channel = DataStore.RemoveChannel(id) as ISocketPrivateChannel;
foreach (var recipient in channel.Recipients)
recipient.User.RemoveRef(this);
if (channel != null)
{
foreach (var recipient in channel.Recipients)
recipient.User.RemoveRef(this);
}
return channel;
}



Loading…
Cancel
Save