From 023c33070479276510e9edd87c0a4cc62decf7bf Mon Sep 17 00:00:00 2001 From: Hsu Still <341464@gmail.com> Date: Wed, 4 Apr 2018 12:45:15 +0800 Subject: [PATCH] Fix NRE when a parent isn't found --- .../Entities/Channels/ChannelHelper.cs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs b/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs index f32a44f8a..5e6886f3f 100644 --- a/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs +++ b/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs @@ -35,11 +35,13 @@ namespace Discord.Rest if (args.SyncWithParent.IsSpecified && args.SyncWithParent.Value) { var categoryChannel = await channel.GetCategoryAsync().ConfigureAwait(false); - apiArgs.Overwrites = categoryChannel.PermissionOverwrites - .Select(overwrite => new API.Overwrite(overwrite.TargetId, overwrite.TargetType, - overwrite.Permissions.AllowValue, overwrite.Permissions.DenyValue)) - .ToArray(); + if (categoryChannel != null) + apiArgs.Overwrites = categoryChannel.PermissionOverwrites + .Select(overwrite => new API.Overwrite(overwrite.TargetId, overwrite.TargetType, + overwrite.Permissions.AllowValue, overwrite.Permissions.DenyValue)) + .ToArray(); } + return await client.ApiClient.ModifyGuildChannelAsync(channel.Id, apiArgs, options).ConfigureAwait(false); } public static async Task ModifyAsync(ITextChannel channel, BaseDiscordClient client,