Fix SocketKickAuditLogData User never having value (#2763)

This commit is contained in:
Mihail Gribkov
2023-11-18 23:50:35 +03:00
committed by GitHub
parent b1787d8334
commit 5cfec056cb

View File

@@ -1,4 +1,5 @@
using Discord.Rest;
using EntryModel = Discord.API.AuditLogEntry;
namespace Discord.WebSocket;
@@ -15,17 +16,16 @@ public class SocketKickAuditLogData : ISocketAuditLogData
internal static SocketKickAuditLogData Create(DiscordSocketClient discord, EntryModel entry)
{
var cachedUser = discord.GetUser(entry.Id);
var cachedUser = discord.GetUser(entry.TargetId!.Value);
var cacheableUser = new Cacheable<SocketUser, RestUser, IUser, ulong>(
cachedUser,
entry.Id,
entry.TargetId.Value,
cachedUser is not null,
async () =>
{
var user = await discord.ApiClient.GetUserAsync(entry.TargetId!.Value);
return user is not null ? RestUser.Create(discord, user) : null;
});
return new SocketKickAuditLogData(cacheableUser);
}