diff --git a/docs/changelog.rst b/docs/changelog.rst --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -26,6 +26,7 @@ fixes - fixed #390 cache invalidation problems on repos inside group - fixed #385 clone by ID url was loosing proxy prefix in URL - fixed some unicode problems with waitress +- fixed issue with escaping < and > in changeset commits 1.3.3 (**2012-03-02**) ---------------------- diff --git a/rhodecode/lib/helpers.py b/rhodecode/lib/helpers.py --- a/rhodecode/lib/helpers.py +++ b/rhodecode/lib/helpers.py @@ -802,6 +802,12 @@ def urlify_text(text_): def urlify_changesets(text_, repository): + """ + Extract revision ids from changeset and make link from them + + :param text_: + :param repository: + """ import re URL_PAT = re.compile(r'([0-9a-fA-F]{12,})') @@ -839,10 +845,10 @@ def urlify_commit(text_, repository=None """ import re import traceback - - # urlify changesets - text_ = urlify_changesets(text_, repository) - + + def escaper(string): + return string.replace('<', '<').replace('>', '>') + def linkify_others(t, l): urls = re.compile(r'(\)',) links = [] @@ -853,6 +859,11 @@ def urlify_commit(text_, repository=None links.append(e) return ''.join(links) + + + # urlify changesets - extrac revisions and make link out of them + text_ = urlify_changesets(escaper(text_), repository) + try: conf = config['app_conf']