summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--models/issue.go2
-rw-r--r--models/issue_assignees.go8
2 files changed, 7 insertions, 3 deletions
diff --git a/models/issue.go b/models/issue.go
index 1ac200c800..a327410435 100644
--- a/models/issue.go
+++ b/models/issue.go
@@ -964,7 +964,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
}
diff --git a/models/issue_assignees.go b/models/issue_assignees.go
index 24773cc576..b4f346974b 100644
--- a/models/issue_assignees.go
+++ b/models/issue_assignees.go
@@ -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)
}