diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2025-02-28 08:29:21 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-28 16:29:21 +0000 |
commit | aca21549f285255f0d78f90f1f15f0c6f9396761 (patch) | |
tree | 42a44e7e585380cfe9cd50d582dbafc07cc03dd2 /services/packages | |
parent | ae4a3d770813f37f092bdea8a2b3a0827fcc1b41 (diff) | |
download | gitea-aca21549f285255f0d78f90f1f15f0c6f9396761.tar.gz gitea-aca21549f285255f0d78f90f1f15f0c6f9396761.zip |
Add composor source field (#33502)
Fix #33066
Diffstat (limited to 'services/packages')
-rw-r--r-- | services/packages/package_update.go | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/services/packages/package_update.go b/services/packages/package_update.go index 8d851fac53..4a22ee7a62 100644 --- a/services/packages/package_update.go +++ b/services/packages/package_update.go @@ -44,16 +44,17 @@ func UnlinkFromRepository(ctx context.Context, pkg *packages_model.Package, doer } repo, err := repo_model.GetRepositoryByID(ctx, pkg.RepoID) - if err != nil { + if err != nil && !repo_model.IsErrRepoNotExist(err) { return fmt.Errorf("error getting repository %d: %w", pkg.RepoID, err) } - - perms, err := access_model.GetUserRepoPermission(ctx, repo, doer) - if err != nil { - return fmt.Errorf("error getting permissions for user %d on repository %d: %w", doer.ID, repo.ID, err) - } - if !perms.CanWrite(unit.TypePackages) { - return util.ErrPermissionDenied + if err == nil { + perms, err := access_model.GetUserRepoPermission(ctx, repo, doer) + if err != nil { + return fmt.Errorf("error getting permissions for user %d on repository %d: %w", doer.ID, repo.ID, err) + } + if !perms.CanWrite(unit.TypePackages) { + return util.ErrPermissionDenied + } } user, err := user_model.GetUserByID(ctx, pkg.OwnerID) |