diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2023-11-26 07:43:23 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-25 23:43:23 +0000 |
commit | bc3d8bff73a5bd307dc825254b51bfedd722f078 (patch) | |
tree | 3e36c10cc0015ce9339f3520411ec9ff742e1d7c /models/repo | |
parent | 7f81110461903685807f2e863d67fe89db1be060 (diff) | |
download | gitea-bc3d8bff73a5bd307dc825254b51bfedd722f078.tar.gz gitea-bc3d8bff73a5bd307dc825254b51bfedd722f078.zip |
Fix comment permissions (#28213) (#28216)
backport #28213
This PR will fix some missed checks for private repositories' data on
web routes and API routes.
Diffstat (limited to 'models/repo')
-rw-r--r-- | models/repo/release.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/models/repo/release.go b/models/repo/release.go index ff31ec4510..223d3f2501 100644 --- a/models/repo/release.go +++ b/models/repo/release.go @@ -207,6 +207,21 @@ func GetReleaseByID(ctx context.Context, id int64) (*Release, error) { return rel, nil } +// GetReleaseForRepoByID returns release with given ID. +func GetReleaseForRepoByID(ctx context.Context, repoID, id int64) (*Release, error) { + rel := new(Release) + has, err := db.GetEngine(ctx). + Where("id=? AND repo_id=?", id, repoID). + Get(rel) + if err != nil { + return nil, err + } else if !has { + return nil, ErrReleaseNotExist{id, ""} + } + + return rel, nil +} + // FindReleasesOptions describes the conditions to Find releases type FindReleasesOptions struct { db.ListOptions |