diff --git a/pagure/templates/releases.html b/pagure/templates/releases.html
index 610b676..3cf64df 100644
--- a/pagure/templates/releases.html
+++ b/pagure/templates/releases.html
@@ -39,12 +39,12 @@
{% for tag in tags %}
+ identifier=tag.oid) }}">
{{ tag.name }}
{% if tag.message %}
-- {{ tag.message.split('\n')[0] }}
{% endif %}
- {{ tag.get_object().hex | short }}
+ {{ tag.oid | short }}
{% endfor %}
diff --git a/pagure/ui/repo.py b/pagure/ui/repo.py
index ba46e52..f97a893 100644
--- a/pagure/ui/repo.py
+++ b/pagure/ui/repo.py
@@ -621,6 +621,10 @@ def view_tree(repo, identifier=None, username=None):
if 'master' in repo_obj.listall_branches():
commit = repo_obj[repo_obj.head.target]
branchname = 'master'
+ # If we're arriving here from the release page, we may have a Tag
+ # where we expected a commit, in this case, get the actual commit
+ if isinstance(commit, pygit2.Tag):
+ commit = commit.get_object()
if commit:
content = sorted(commit.tree, key=lambda x: x.filemode)