Browse Source

Fixed null DataStore during GroupChannel update

pull/125/head
RogueException 9 years ago
parent
commit
506c857963
2 changed files with 6 additions and 3 deletions
  1. +1
    -1
      src/Discord.Net/DiscordSocketClient.cs
  2. +5
    -2
      src/Discord.Net/Entities/WebSocket/CachedGroupChannel.cs

+ 1
- 1
src/Discord.Net/DiscordSocketClient.cs View File

@@ -359,7 +359,7 @@ namespace Discord
case ChannelType.Group:
{
var channel = new CachedGroupChannel(this, model);
channel.UpdateUsers(model.Recipients.Value, UpdateSource.Creation);
channel.UpdateUsers(model.Recipients.Value, UpdateSource.Creation, dataStore);
dataStore.AddChannel(channel);
return channel;
}


+ 5
- 2
src/Discord.Net/Entities/WebSocket/CachedGroupChannel.cs View File

@@ -8,6 +8,7 @@ using MessageModel = Discord.API.Message;
using Model = Discord.API.Channel;
using UserModel = Discord.API.User;
using VoiceStateModel = Discord.API.VoiceState;
using Discord.API;

namespace Discord
{
@@ -37,16 +38,18 @@ namespace Discord
base.Update(model, source);
}

internal override void UpdateUsers(UserModel[] models, UpdateSource source)
internal void UpdateUsers(UserModel[] models, UpdateSource source, DataStore dataStore)
{
var users = new ConcurrentDictionary<ulong, GroupUser>(1, models.Length);
for (int i = 0; i < models.Length; i++)
{
var globalUser = Discord.GetOrAddUser(models[i], Discord.DataStore);
var globalUser = Discord.GetOrAddUser(models[i], dataStore);
users[models[i].Id] = new CachedGroupUser(this, globalUser);
}
_users = users;
}
internal override void UpdateUsers(UserModel[] models, UpdateSource source)
=> UpdateUsers(models, source, Discord.DataStore);

public CachedGroupUser AddUser(UserModel model, DataStore dataStore)
{


Loading…
Cancel
Save