Fix failure on creating pull request with assignees (#4419) (#4727)

This commit is contained in:
SagePtr 2018-08-16 19:46:06 +02:00 committed by techknowlogick
parent a345023d0a
commit 12c04a85f2
2 changed files with 7 additions and 3 deletions

View file

@ -950,7 +950,7 @@ func newIssue(e *xorm.Session, doer *User, opts NewIssueOptions) (err error) {
// Insert the assignees
for _, assigneeID := range opts.AssigneeIDs {
err = opts.Issue.changeAssignee(e, doer, assigneeID)
err = opts.Issue.changeAssignee(e, doer, assigneeID, true)
if err != nil {
return err
}

View file

@ -134,14 +134,14 @@ func (issue *Issue) ChangeAssignee(doer *User, assigneeID int64) (err error) {
return err
}
if err := issue.changeAssignee(sess, doer, assigneeID); err != nil {
if err := issue.changeAssignee(sess, doer, assigneeID, false); err != nil {
return err
}
return sess.Commit()
}
func (issue *Issue) changeAssignee(sess *xorm.Session, doer *User, assigneeID int64) (err error) {
func (issue *Issue) changeAssignee(sess *xorm.Session, doer *User, assigneeID int64, isCreate bool) (err error) {
// Update the assignee
removed, err := updateIssueAssignee(sess, issue, assigneeID)
@ -161,6 +161,10 @@ func (issue *Issue) changeAssignee(sess *xorm.Session, doer *User, assigneeID in
mode, _ := accessLevel(sess, doer.ID, issue.Repo)
if issue.IsPull {
// if pull request is in the middle of creation - don't call webhook
if isCreate {
return nil
}
if err = issue.loadPullRequest(sess); err != nil {
return fmt.Errorf("loadPullRequest: %v", err)
}