From 64769c8a6beb569053aef7d440bef8f193f1d1df Mon Sep 17 00:00:00 2001 From: guillep2k <18600385+guillep2k@users.noreply.github.com> Date: Mon, 18 Nov 2019 14:03:49 -0300 Subject: [PATCH] Allow authors to use act keywords in PR content (#9059) --- models/issue_xref.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/models/issue_xref.go b/models/issue_xref.go index 41937dc67..f41c15475 100644 --- a/models/issue_xref.go +++ b/models/issue_xref.go @@ -178,9 +178,14 @@ func (issue *Issue) verifyReferencedIssue(e Engine, ctx *crossReferencesContext, if !perm.CanReadIssuesOrPulls(refIssue.IsPull) { return nil, references.XRefActionNone, nil } + // Accept close/reopening actions only if the poster is able to close the + // referenced issue manually at this moment. The only exception is + // the poster of a new PR referencing an issue on the same repo: then the merger + // should be responsible for checking whether the reference should resolve. if ref.Action != references.XRefActionNone && ctx.Doer.ID != refIssue.PosterID && - !perm.CanWriteIssuesOrPulls(refIssue.IsPull) { + !perm.CanWriteIssuesOrPulls(refIssue.IsPull) && + (refIssue.RepoID != ctx.OrigIssue.RepoID || ctx.OrigComment != nil) { refAction = references.XRefActionNone } }