GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — fix: Make permission group operations case-insensitive · RocketModFix/RocketModFix@bbe8c85

File tree

Expand file treeCollapse file tree
Open diff view settings
Filter options
  • Rocket/Rocket.Core/Permissions
    • RocketPermissionsHelper.cs
Expand file treeCollapse file tree
Open diff view settings
Collapse file

‎Rocket/Rocket.Core/Permissions/RocketPermissionsHelper.cs‎

Copy file name to clipboardExpand all lines: Rocket/Rocket.Core/Permissions/RocketPermissionsHelper.cs
+7-6Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,10 @@ internal RocketPermissionsProviderResult RemovePlayerFromGroup(string groupId, s
7474
RocketPermissionsGroup g = GetGroup(groupId);
7575
if (g == null) return RocketPermissionsProviderResult.GroupNotFound;
7676

77-
if (g.Members.FirstOrDefault(m => m == playerId) == null) return RocketPermissionsProviderResult.PlayerNotFound;
77+
string memberToRemove = g.Members.FirstOrDefault(m => string.Equals(m, playerId, StringComparison.CurrentCultureIgnoreCase));
78+
if (memberToRemove == null) return RocketPermissionsProviderResult.PlayerNotFound;
7879

79-
g.Members.Remove(playerId);
80+
g.Members.Remove(memberToRemove);
8081
SaveGroup(g);
8182
return RocketPermissionsProviderResult.Success;
8283
}
@@ -91,7 +92,7 @@ internal RocketPermissionsProviderResult AddPlayerToGroup(string groupId, string
9192
RocketPermissionsGroup g = GetGroup(groupId);
9293
if (g == null) return RocketPermissionsProviderResult.GroupNotFound;
9394

94-
if (g.Members.FirstOrDefault(m => m == playerId) != null) return RocketPermissionsProviderResult.DuplicateEntry;
95+
if (g.Members.FirstOrDefault(m => string.Equals(m, playerId, StringComparison.CurrentCultureIgnoreCase)) != null) return RocketPermissionsProviderResult.DuplicateEntry;
9596

9697
g.Members.Add(playerId);
9798
SaveGroup(g);
@@ -110,7 +111,7 @@ internal RocketPermissionsProviderResult DeleteGroup(string groupId)
110111

111112
internal RocketPermissionsProviderResult SaveGroup(RocketPermissionsGroup group)
112113
{
113-
int i = permissions.Instance.Groups.FindIndex(gr => gr.Id == group.Id);
114+
int i = permissions.Instance.Groups.FindIndex(gr => string.Equals(gr.Id, group.Id, StringComparison.CurrentCultureIgnoreCase));
114115
if (i < 0) return RocketPermissionsProviderResult.GroupNotFound;
115116
permissions.Instance.Groups[i] = group;
116117
permissions.Save();
@@ -119,7 +120,7 @@ internal RocketPermissionsProviderResult SaveGroup(RocketPermissionsGroup group)
119120

120121
internal RocketPermissionsProviderResult AddGroup(RocketPermissionsGroup group)
121122
{
122-
int i = permissions.Instance.Groups.FindIndex(gr => gr.Id == group.Id);
123+
int i = permissions.Instance.Groups.FindIndex(gr => string.Equals(gr.Id, group.Id, StringComparison.CurrentCultureIgnoreCase));
123124
if (i != -1) return RocketPermissionsProviderResult.DuplicateEntry;
124125
permissions.Instance.Groups.Add(group);
125126
permissions.Save();
@@ -136,7 +137,7 @@ public List<RocketPermissionsGroup> GetGroups(string playerId, bool includeParen
136137
{
137138
// get player groups
138139
List<RocketPermissionsGroup> groups = this.permissions.Instance?.Groups?.OrderBy(x => x.Priority)
139-
.Where(g => g.Members.Contains(playerId))
140+
.Where(g => g.Members.Any(m => string.Equals(m, playerId, StringComparison.CurrentCultureIgnoreCase)))
140141
.ToList() ?? new List<RocketPermissionsGroup>();
141142

142143
// get first default group

0 commit comments

Comments
0 (0)
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.