From 0742f717adc9739653b78032c71a5360c0885476 Mon Sep 17 00:00:00 2001
From: Lunny Xiao <xiaolunwen@gmail.com>
Date: Wed, 31 Jul 2019 17:24:38 +0800
Subject: [PATCH] fix duplicated webhook when creating issue with assignees
 (#7681)

---
 models/issue_assignees.go | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/models/issue_assignees.go b/models/issue_assignees.go
index f6a2afe2c9..d88a4218cf 100644
--- a/models/issue_assignees.go
+++ b/models/issue_assignees.go
@@ -142,11 +142,15 @@ func (issue *Issue) ChangeAssignee(doer *User, assigneeID int64) (err error) {
 		return err
 	}
 
-	return sess.Commit()
+	if err := sess.Commit(); err != nil {
+		return err
+	}
+
+	go HookQueue.Add(issue.RepoID)
+	return nil
 }
 
 func (issue *Issue) changeAssignee(sess *xorm.Session, doer *User, assigneeID int64, isCreate bool) (err error) {
-
 	// Update the assignee
 	removed, err := updateIssueAssignee(sess, issue, assigneeID)
 	if err != nil {
@@ -209,7 +213,6 @@ func (issue *Issue) changeAssignee(sess *xorm.Session, doer *User, assigneeID in
 			return nil
 		}
 	}
-	go HookQueue.Add(issue.RepoID)
 	return nil
 }