1
1
mirror of https://github.com/go-gitea/gitea synced 2025-08-17 15:08:27 +00:00

Don't return duplicated users who can create org repo (#22560) (#22562)

- Backport of #22560
- Currently the function `GetUsersWhoCanCreateOrgRepo` uses a query that
is able to have duplicated users in the result, this is can happen under
the condition that a user is in team that either is the owner team or
has permission to create organization repositories.
- Add test code to simulate the above condition for user 3,
[`TestGetUsersWhoCanCreateOrgRepo`](a1fcb1cfb8/models/organization/org_test.go (L435))
is the test function that tests for this.
  - The fix is quite trivial, use a map as a set to get distinct orgs.
This commit is contained in:
Gusted
2023-01-30 17:59:20 +01:00
committed by GitHub
parent e6d6bce1f6
commit fd2c250b52
6 changed files with 28 additions and 9 deletions

View File

@@ -157,7 +157,7 @@ func CreateRepoTransferNotification(doer, newOwner *user_model.User, repo *repo_
}
for i := range users {
notify = append(notify, &Notification{
UserID: users[i].ID,
UserID: i,
RepoID: repo.ID,
Status: NotificationStatusUnread,
UpdatedBy: doer.ID,