From 4c27030333041c11ffec5261717d043d1d6c5406 Mon Sep 17 00:00:00 2001 From: Jan Pokorný Date: Aug 27 2015 17:08:36 +0000 Subject: Honor also symlinked README's in repo overview Signed-off-by: Jan Pokorný --- diff --git a/pagure/ui/repo.py b/pagure/ui/repo.py index d883870..a9a6fad 100644 --- a/pagure/ui/repo.py +++ b/pagure/ui/repo.py @@ -84,6 +84,17 @@ def view_repo(repo, username=None): name, ext = os.path.splitext(i.name) if name == 'README': content = repo_obj[i.oid].data + # If it's a (sane) symlink, we try a single-level dereference + if i.filemode == pygit2.GIT_FILEMODE_LINK \ + and os.path.normpath(content) == content \ + and not os.path.isabs(content): + try: + dereferenced = last_commits[0].tree[content] + except KeyError: + pass + else: + if dereferenced.filemode == pygit2.GIT_FILEMODE_BLOB: + content = repo_obj[dereferenced.oid].data readme, safe = pagure.doc_utils.convert_readme( content, ext, view_file_url=flask.url_for(