diff --git a/src/Discord.Net.Core/Extensions/GuildUserExtensions.cs b/src/Discord.Net.Core/Extensions/GuildUserExtensions.cs index 4067d0b3e..ee53fceb8 100644 --- a/src/Discord.Net.Core/Extensions/GuildUserExtensions.cs +++ b/src/Discord.Net.Core/Extensions/GuildUserExtensions.cs @@ -21,12 +21,11 @@ namespace Discord return user.RoleIds.Select(r => guild.GetRole(r)); } - public static int CompareRoles(this IGuildUser u1, IGuildUser u2) { + public static int CompareRoles(this IGuildUser left, IGuildUser right) { // These should never be empty since the everyone role is always present - var r1 = u1.GetRoles().Max(); - var r2 = u2.GetRoles().Max(); - var result = r1.CompareTo(r2); - return result != 0 ? result : u1.Id.CompareTo(u2.Id); + var roleLeft = left.GetRoles().Max(); + var roleRight= right.GetRoles().Max(); + return roleLeft.CompareTo(roleRight); } public static int Compare(this IGuildUser user, IRole role) { diff --git a/src/Discord.Net.Core/Extensions/RoleExtensions.cs b/src/Discord.Net.Core/Extensions/RoleExtensions.cs index db146a36c..ae2d1ccce 100644 --- a/src/Discord.Net.Core/Extensions/RoleExtensions.cs +++ b/src/Discord.Net.Core/Extensions/RoleExtensions.cs @@ -6,14 +6,16 @@ namespace Discord { public static class RoleExtensions { - internal static int Compare(this IRole r1, IRole r2) { - if(r2 == null) + internal static int Compare(this IRole left, IRole right) { + if(left == null) + return -1; + if(right == null) return 1; - var result = r1.Position.CompareTo(r2.Position); + var result = left.Position.CompareTo(right.Position); // As per Discord's documentation, a tie is broken by ID if(result != 0) return result; - return r1.Id.CompareTo(r2.Id); + return left.Id.CompareTo(right.Id); } } }