diff options
author | Norwin <noerw@users.noreply.github.com> | 2022-03-22 02:09:45 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-22 09:09:45 +0800 |
commit | 77d1c7bf2fbdc217cef564417c8fd82612834f6e (patch) | |
tree | 527fb67941d21e1a41bb2670940a6df8f0a75602 /modules/util | |
parent | bfe2e3d562307eb8b6659d71d2c10bf3c1284e77 (diff) | |
download | gitea-77d1c7bf2fbdc217cef564417c8fd82612834f6e.tar.gz gitea-77d1c7bf2fbdc217cef564417c8fd82612834f6e.zip |
Cleanup protected branches when deleting users & teams (#19158)
* Clean up protected_branches when deleting user
fixes #19094
* Clean up protected_branches when deleting teams
* fix issue
Co-authored-by: Lauris BH <lauris@nix.lv>
Diffstat (limited to 'modules/util')
-rw-r--r-- | modules/util/slice.go | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/modules/util/slice.go b/modules/util/slice.go new file mode 100644 index 0000000000..552f5b866a --- /dev/null +++ b/modules/util/slice.go @@ -0,0 +1,18 @@ +// Copyright 2022 The Gitea Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package util + +// RemoveIDFromList removes the given ID from the slice, if found. +// It does not preserve order, and assumes the ID is unique. +func RemoveIDFromList(list []int64, id int64) ([]int64, bool) { + n := len(list) - 1 + for i, item := range list { + if item == id { + list[i] = list[n] + return list[:n], true + } + } + return list, false +} |