mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 16:40:24 +08:00 
			
		
		
		
	add permission check for `GenerateRepository` (#15946)
				
					
				
			Signed-off-by: a1012112796 <1012112796@qq.com> Co-authored-by: techknowlogick <techknowlogick@gitea.io> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
This commit is contained in:
		@@ -13,6 +13,12 @@ import (
 | 
			
		||||
 | 
			
		||||
// GenerateRepository generates a repository from a template
 | 
			
		||||
func GenerateRepository(doer, owner *models.User, templateRepo *models.Repository, opts models.GenerateRepoOptions) (_ *models.Repository, err error) {
 | 
			
		||||
	if !doer.IsAdmin && !owner.CanCreateRepo() {
 | 
			
		||||
		return nil, models.ErrReachLimitOfRepo{
 | 
			
		||||
			Limit: owner.MaxRepoCreation,
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	var generateRepo *models.Repository
 | 
			
		||||
	if err = models.WithTx(func(ctx models.DBContext) error {
 | 
			
		||||
		generateRepo, err = repo_module.GenerateRepository(ctx, doer, owner, templateRepo, opts)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user