mirror of
https://codeberg.org/davrot/forgejo.git
synced 2025-05-28 12:00:01 +02:00
Fix bug in removeOrgRepo
This commit is contained in:
parent
8a421b1fd7
commit
f82ea42679
2 changed files with 22 additions and 2 deletions
|
@ -526,10 +526,28 @@ func RemoveOrgUser(orgID, userID int64) error {
|
|||
}
|
||||
|
||||
func removeOrgRepo(e Engine, orgID, repoID int64) error {
|
||||
_, err := e.Delete(&TeamRepo{
|
||||
teamRepos := make([]*TeamRepo, 0, 10)
|
||||
if err := e.Find(&teamRepos, &TeamRepo{OrgID: orgID, RepoID: repoID}); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(teamRepos) == 0 {
|
||||
return nil
|
||||
}
|
||||
|
||||
if _, err := e.Delete(&TeamRepo{
|
||||
OrgID: orgID,
|
||||
RepoID: repoID,
|
||||
})
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
teamIDs := make([]int64, len(teamRepos))
|
||||
for i, teamRepo := range teamRepos {
|
||||
teamIDs[i] = teamRepo.ID
|
||||
}
|
||||
|
||||
_, err := x.Decr("num_repos").In("id", teamIDs).Update(new(Team))
|
||||
return err
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue