summaryrefslogtreecommitdiffstats
path: root/routers/repo/pull.go
diff options
context:
space:
mode:
Diffstat (limited to 'routers/repo/pull.go')
-rw-r--r--routers/repo/pull.go10
1 files changed, 7 insertions, 3 deletions
diff --git a/routers/repo/pull.go b/routers/repo/pull.go
index a852cee1f3..dfe07ca44a 100644
--- a/routers/repo/pull.go
+++ b/routers/repo/pull.go
@@ -775,7 +775,7 @@ func CompareAndPullRequestPost(ctx *context.Context, form auth.CreateIssueForm)
return
}
- labelIDs, milestoneID, assigneeID := ValidateRepoMetas(ctx, form)
+ labelIDs, assigneeIDs, milestoneID := ValidateRepoMetas(ctx, form)
if ctx.Written() {
return
}
@@ -811,7 +811,6 @@ func CompareAndPullRequestPost(ctx *context.Context, form auth.CreateIssueForm)
PosterID: ctx.User.ID,
Poster: ctx.User,
MilestoneID: milestoneID,
- AssigneeID: assigneeID,
IsPull: true,
Content: form.Content,
}
@@ -828,7 +827,12 @@ func CompareAndPullRequestPost(ctx *context.Context, form auth.CreateIssueForm)
}
// FIXME: check error in the case two people send pull request at almost same time, give nice error prompt
// instead of 500.
- if err := models.NewPullRequest(repo, pullIssue, labelIDs, attachments, pullRequest, patch); err != nil {
+
+ if err := models.NewPullRequest(repo, pullIssue, labelIDs, attachments, pullRequest, patch, assigneeIDs); err != nil {
+ if models.IsErrUserDoesNotHaveAccessToRepo(err) {
+ ctx.Error(400, "UserDoesNotHaveAccessToRepo", err.Error())
+ return
+ }
ctx.ServerError("NewPullRequest", err)
return
} else if err := pullRequest.PushToBaseRepo(); err != nil {