diff --git a/modules/context/repo.go b/modules/context/repo.go index 8f4377b0415..8f2622fa82d 100644 --- a/modules/context/repo.go +++ b/modules/context/repo.go @@ -212,6 +212,17 @@ func RedirectToRepo(ctx *Context, redirectRepoID int64) { func repoAssignment(ctx *Context, repo *models.Repository) { var err error + if err = repo.GetOwner(); err != nil { + ctx.ServerError("GetOwner", err) + return + } + + if repo.Owner.IsOrganization() { + if !models.HasOrgVisible(repo.Owner, ctx.User) { + ctx.NotFound("HasOrgVisible", nil) + return + } + } ctx.Repo.Permission, err = models.GetUserRepoPermission(repo, ctx.User) if err != nil { ctx.ServerError("GetUserRepoPermission", err)