diff --git a/pagure/templates/pull_request.html b/pagure/templates/pull_request.html
index 78a756a..68ccee8 100644
--- a/pagure/templates/pull_request.html
+++ b/pagure/templates/pull_request.html
@@ -23,8 +23,8 @@
{% if pull_request %}
Pull Request: {{ pull_request.title | noJS("img") | safe
- }}{% if g.fas_user and (g.fas_user.username == pull_request.user.username
- or repo_admin)
+ }}{% if authenticated and (g.fas_user.username == pull_request.user.username
+ or repo_admin) and pull_request.status == 'Open'
%}{%
diff --git a/pagure/ui/fork.py b/pagure/ui/fork.py
index f6a51fb..bfb60f2 100644
--- a/pagure/ui/fork.py
+++ b/pagure/ui/fork.py
@@ -355,6 +355,9 @@ def request_pull_edit(repo, requestid, username=None):
if not request:
flask.abort(404, 'Pull-request not found')
+ if request.status != 'Open':
+ flask.abort(400, 'Pull-request is already closed')
+
if not is_repo_admin(repo) \
or flask.g.fas_user.username != request.user.username :
flask.abort(403, 'You are not allowed to edit this pull-request')