From 75d2d456a5c89691e67debbf57f66b0934b92c52 Mon Sep 17 00:00:00 2001 From: RogueException Date: Sat, 26 Dec 2015 02:38:14 -0400 Subject: [PATCH] Fixed permission cache errors when adding a channel --- src/Discord.Net/Models/Channel.cs | 5 +++++ src/Discord.Net/Models/Server.cs | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Discord.Net/Models/Channel.cs b/src/Discord.Net/Models/Channel.cs index 897e67342..c178beec2 100644 --- a/src/Discord.Net/Models/Channel.cs +++ b/src/Discord.Net/Models/Channel.cs @@ -107,6 +107,11 @@ namespace Discord : this(client, id) { Server = server; + if (server != null) + { + foreach (var user in server.Users) + AddUser(user); + } } internal Channel(DiscordClient client, ulong id, User recipient) : this(client, id) diff --git a/src/Discord.Net/Models/Server.cs b/src/Discord.Net/Models/Server.cs index 1eb79e9cd..3c1ae6808 100644 --- a/src/Discord.Net/Models/Server.cs +++ b/src/Discord.Net/Models/Server.cs @@ -204,7 +204,8 @@ namespace Discord #region Channels internal Channel AddChannel(ulong id) { - var channel = _channels.GetOrAdd(id, x => new Channel(Client, x, this)); + var channel = new Channel(Client, id, this); + channel = _channels.GetOrAdd(id, x => channel); Client.AddChannel(channel); return channel; }