Browse Source

Patch out NRE's, test on all int types

pull/2281/head
Armano den Boef 3 years ago
parent
commit
e31ba8e75f
2 changed files with 9 additions and 7 deletions
  1. +1
    -1
      src/Discord.Net.Rest/Entities/Interactions/RestInteraction.cs
  2. +8
    -6
      src/Discord.Net.Rest/Entities/Users/RestGuildUser.cs

+ 1
- 1
src/Discord.Net.Rest/Entities/Interactions/RestInteraction.cs View File

@@ -168,7 +168,7 @@ namespace Discord.Rest
{
if (model.Member.IsSpecified && model.GuildId.IsSpecified)
{
User = RestGuildUser.Create(Discord, Guild, model.Member.Value);
User = RestGuildUser.Create(Discord, Guild, model.Member.Value, (Guild is null) ? model.GuildId.Value : null);
}
else
{


+ 8
- 6
src/Discord.Net.Rest/Entities/Users/RestGuildUser.cs View File

@@ -35,7 +35,7 @@ namespace Discord.Rest
/// <inheritdoc />
public DateTimeOffset? PremiumSince => DateTimeUtils.FromTicks(_premiumSinceTicks);
/// <inheritdoc />
public ulong GuildId => Guild.Id;
public ulong GuildId { get; }
/// <inheritdoc />
public bool? IsPending { get; private set; }
/// <inheritdoc />
@@ -80,14 +80,16 @@ namespace Discord.Rest
/// <inheritdoc />
public DateTimeOffset? JoinedAt => DateTimeUtils.FromTicks(_joinedAtTicks);

internal RestGuildUser(BaseDiscordClient discord, IGuild guild, ulong id)
internal RestGuildUser(BaseDiscordClient discord, IGuild guild, ulong id, ulong? guildId = null)
: base(discord, id)
{
Guild = guild;
if (guild is not null)
Guild = guild;
GuildId = guildId ?? Guild.Id;
}
internal static RestGuildUser Create(BaseDiscordClient discord, IGuild guild, Model model)
internal static RestGuildUser Create(BaseDiscordClient discord, IGuild guild, Model model, ulong? guildId = null)
{
var entity = new RestGuildUser(discord, guild, model.User.Id);
var entity = new RestGuildUser(discord, guild, model.User.Id, guildId);
entity.Update(model);
return entity;
}
@@ -116,7 +118,7 @@ namespace Discord.Rest
private void UpdateRoles(ulong[] roleIds)
{
var roles = ImmutableArray.CreateBuilder<ulong>(roleIds.Length + 1);
roles.Add(Guild.Id);
roles.Add(GuildId);
for (int i = 0; i < roleIds.Length; i++)
roles.Add(roleIds[i]);
_roleIds = roles.ToImmutable();


Loading…
Cancel
Save