diff --git a/controller/rbac/role.go b/controller/rbac/role.go index 2deb123fde7b72d686d796622e0d45302149708a..e2e0897536a16f68fb51fe8e845f3277e8beab99 100644 --- a/controller/rbac/role.go +++ b/controller/rbac/role.go @@ -51,13 +51,17 @@ func (r Role) GetPermissions() []string { } // RemovePermissionsFromRole takes permissions that should be removed from a role and updates the current permissions accordingly -func (r Role) RemovePermissionsFromRole(permissionsToRemove []string) { +func (r *Role) RemovePermissionsFromRole(permissionsToRemove []string) { for _, permToRemove := range permissionsToRemove { - for i, perm := range r.Permissions { - if perm == permToRemove { - r.Permissions = append(r.Permissions[:i], r.Permissions[i+1:]...) - break - } + r.removePermissionFromRoles(permToRemove) + } +} + +func (r *Role) removePermissionFromRoles(permToRemove string) { + for i, perm := range r.Permissions { + if perm == permToRemove { + r.Permissions = append(r.Permissions[:i], r.Permissions[i+1:]...) + break } } }