1
0
Fork 0
forked from forgejo/forgejo

Avoid re-issuing redundant cross-references. (#8734)

* Avoid re-issuing redundant cross-references.

* Remove unused func; fix lint

* Simplify code as suggested by @laftriks

* Update test
This commit is contained in:
guillep2k 2019-11-18 20:43:03 -03:00 committed by Lauris BH
parent f128e06ea6
commit 2c2b9718e6
4 changed files with 57 additions and 32 deletions

View file

@ -722,11 +722,7 @@ func (issue *Issue) ChangeTitle(doer *User, oldTitle string) (err error) {
return fmt.Errorf("createComment: %v", err)
}
if err = issue.neuterCrossReferences(sess); err != nil {
return err
}
if err = issue.addCrossReferences(sess, doer); err != nil {
if err = issue.addCrossReferences(sess, doer, true); err != nil {
return err
}
@ -790,10 +786,8 @@ func (issue *Issue) ChangeContent(doer *User, content string) (err error) {
if err = updateIssueCols(sess, issue, "content"); err != nil {
return fmt.Errorf("UpdateIssueCols: %v", err)
}
if err = issue.neuterCrossReferences(sess); err != nil {
return err
}
if err = issue.addCrossReferences(sess, doer); err != nil {
if err = issue.addCrossReferences(sess, doer, true); err != nil {
return err
}
@ -944,7 +938,7 @@ func newIssue(e *xorm.Session, doer *User, opts NewIssueOptions) (err error) {
if err = opts.Issue.loadAttributes(e); err != nil {
return err
}
return opts.Issue.addCrossReferences(e, doer)
return opts.Issue.addCrossReferences(e, doer, false)
}
// NewIssue creates new issue with labels for repository.
@ -1578,13 +1572,10 @@ func UpdateIssue(issue *Issue) error {
if err := updateIssue(sess, issue); err != nil {
return err
}
if err := issue.neuterCrossReferences(sess); err != nil {
return err
}
if err := issue.loadPoster(sess); err != nil {
return err
}
if err := issue.addCrossReferences(sess, issue.Poster); err != nil {
if err := issue.addCrossReferences(sess, issue.Poster, true); err != nil {
return err
}
return sess.Commit()