Fix forking an empty repository (#6637)
Fixes #6633 Signed-off-by: Segev Finer <segev@codeocean.com>
This commit is contained in:
		
							parent
							
								
									3fb038c53a
								
							
						
					
					
						commit
						ecfa5f1594
					
				|  | @ -2436,6 +2436,7 @@ func ForkRepository(doer, u *User, oldRepo *Repository, name, desc string) (_ *R | |||
| 		Description:   desc, | ||||
| 		DefaultBranch: oldRepo.DefaultBranch, | ||||
| 		IsPrivate:     oldRepo.IsPrivate, | ||||
| 		IsEmpty:       oldRepo.IsEmpty, | ||||
| 		IsFork:        true, | ||||
| 		ForkID:        oldRepo.ID, | ||||
| 	} | ||||
|  |  | |||
|  | @ -396,6 +396,13 @@ func RepoAssignment() macaron.Handler { | |||
| 			ctx.Data["IsStaringRepo"] = models.IsStaring(ctx.User.ID, repo.ID) | ||||
| 		} | ||||
| 
 | ||||
| 		if repo.IsFork { | ||||
| 			RetrieveBaseRepo(ctx, repo) | ||||
| 			if ctx.Written() { | ||||
| 				return | ||||
| 			} | ||||
| 		} | ||||
| 
 | ||||
| 		// repo is empty and display enable
 | ||||
| 		if ctx.Repo.Repository.IsEmpty { | ||||
| 			ctx.Data["BranchName"] = ctx.Repo.Repository.DefaultBranch | ||||
|  | @ -423,13 +430,6 @@ func RepoAssignment() macaron.Handler { | |||
| 		ctx.Data["BranchName"] = ctx.Repo.BranchName | ||||
| 		ctx.Data["CommitID"] = ctx.Repo.CommitID | ||||
| 
 | ||||
| 		if repo.IsFork { | ||||
| 			RetrieveBaseRepo(ctx, repo) | ||||
| 			if ctx.Written() { | ||||
| 				return | ||||
| 			} | ||||
| 		} | ||||
| 
 | ||||
| 		// People who have push access or have forked repository can propose a new pull request.
 | ||||
| 		if ctx.Repo.CanWrite(models.UnitTypeCode) || (ctx.IsSigned && ctx.User.HasForkedRepo(ctx.Repo.Repository.ID)) { | ||||
| 			// Pull request is allowed if this is a fork repository
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue