Mercurial > kallithea
changeset 1100:e7d7f05217c1 beta
replaced all decode('utf-8') instances with .decode('utf-8','replace') for more error prof setup,
this way rhodecode could handle displaying non utf8 encoded file paths. This is still an invalid path, but this way we could at least show those paths without errors
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Sun, 27 Feb 2011 02:43:44 +0100 |
parents | bc3dafd0e24c |
children | c1080b42a7cb |
files | rhodecode/lib/helpers.py rhodecode/templates/changeset/changeset.html rhodecode/templates/changeset/changeset_range.html rhodecode/templates/files/files_browser.html |
diffstat | 4 files changed, 17 insertions(+), 17 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/lib/helpers.py Sun Feb 27 02:03:49 2011 +0100 +++ b/rhodecode/lib/helpers.py Sun Feb 27 02:43:44 2011 +0100 @@ -186,7 +186,7 @@ def __call__(self, repo_name, rev, paths): if isinstance(paths, str): - paths = paths.decode('utf-8') + paths = paths.decode('utf-8', 'replace') url_l = [link_to(repo_name, url('files_home', repo_name=repo_name, revision=rev, f_path=''))] @@ -683,6 +683,6 @@ suf = '' if len(nodes) > 30: suf = '<br/>' + _(' and %s more') % (len(nodes) - 30) - return literal(pref + '<br/> '.join([x.path.decode('utf-8') for x in nodes[:30]]) + suf) + return literal(pref + '<br/> '.join([x.path.decode('utf-8', 'replace') for x in nodes[:30]]) + suf) else: return ': ' + _('No Files')
--- a/rhodecode/templates/changeset/changeset.html Sun Feb 27 02:03:49 2011 +0100 +++ b/rhodecode/templates/changeset/changeset.html Sun Feb 27 02:43:44 2011 +0100 @@ -81,7 +81,7 @@ <span style="font-size:1.1em;font-weight: bold">${_('Files affected')}</span> <div class="cs_files"> %for change,filenode,diff,cs1,cs2 in c.changes: - <div class="cs_${change}">${h.link_to(filenode.path.decode('utf-8'),h.url.current(anchor=h.repo_name_slug('C%s' % filenode.path.decode('utf-8'))))}</div> + <div class="cs_${change}">${h.link_to(filenode.path.decode('utf-8','replace'),h.url.current(anchor=h.repo_name_slug('C%s' % filenode.path.decode('utf-8','replace'))))}</div> %endfor </div> </div> @@ -92,19 +92,19 @@ %if change !='removed': <div style="clear:both;height:10px"></div> <div class="diffblock"> - <div id="${h.repo_name_slug('C%s' % filenode.path.decode('utf-8'))}" class="code-header"> + <div id="${h.repo_name_slug('C%s' % filenode.path.decode('utf-8','replace'))}" class="code-header"> <div class="changeset_header"> <span class="changeset_file"> - ${h.link_to_if(change!='removed',filenode.path.decode('utf-8'),h.url('files_home',repo_name=c.repo_name, - revision=filenode.changeset.raw_id,f_path=filenode.path.decode('utf-8')))} + ${h.link_to_if(change!='removed',filenode.path.decode('utf-8','replace'),h.url('files_home',repo_name=c.repo_name, + revision=filenode.changeset.raw_id,f_path=filenode.path.decode('utf-8','replace')))} </span> %if 1: » <span>${h.link_to(_('diff'), - h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8'),diff2=cs2,diff1=cs1,diff='diff'))}</span> + h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8','replace'),diff2=cs2,diff1=cs1,diff='diff'))}</span> » <span>${h.link_to(_('raw diff'), - h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8'),diff2=cs2,diff1=cs1,diff='raw'))}</span> + h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8','replace'),diff2=cs2,diff1=cs1,diff='raw'))}</span> » <span>${h.link_to(_('download diff'), - h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8'),diff2=cs2,diff1=cs1,diff='download'))}</span> + h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8','replace'),diff2=cs2,diff1=cs1,diff='download'))}</span> %endif </div> </div>
--- a/rhodecode/templates/changeset/changeset_range.html Sun Feb 27 02:03:49 2011 +0100 +++ b/rhodecode/templates/changeset/changeset_range.html Sun Feb 27 02:43:44 2011 +0100 @@ -54,7 +54,7 @@ %for cs in c.cs_ranges: <div class="cur_cs">r${cs}</div> %for change,filenode,diff,cs1,cs2 in c.changes[cs.raw_id]: - <div class="cs_${change}">${h.link_to(filenode.path.decode('utf-8'),h.url.current(anchor=h.repo_name_slug('C%s-%s' % (cs.short_id,filenode.path.decode('utf-8')))))}</div> + <div class="cs_${change}">${h.link_to(filenode.path.decode('utf-8','replace'),h.url.current(anchor=h.repo_name_slug('C%s-%s' % (cs.short_id,filenode.path.decode('utf-8','replace')))))}</div> %endfor %endfor </div> @@ -66,19 +66,19 @@ %if change !='removed': <div style="clear:both;height:10px"></div> <div class="diffblock"> - <div id="${h.repo_name_slug('C%s-%s' % (cs.short_id,filenode.path.decode('utf-8')))}" class="code-header"> + <div id="${h.repo_name_slug('C%s-%s' % (cs.short_id,filenode.path.decode('utf-8','replace')))}" class="code-header"> <div class="changeset_header"> <span class="changeset_file"> - ${h.link_to_if(change!='removed',filenode.path.decode('utf-8'),h.url('files_home',repo_name=c.repo_name, - revision=filenode.changeset.raw_id,f_path=filenode.path.decode('utf-8')))} + ${h.link_to_if(change!='removed',filenode.path.decode('utf-8','replace'),h.url('files_home',repo_name=c.repo_name, + revision=filenode.changeset.raw_id,f_path=filenode.path.decode('utf-8','replace')))} </span> %if 1: » <span>${h.link_to(_('diff'), - h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8'),diff2=cs2,diff1=cs1,diff='diff'))}</span> + h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8','replace'),diff2=cs2,diff1=cs1,diff='diff'))}</span> » <span>${h.link_to(_('raw diff'), - h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8'),diff2=cs2,diff1=cs1,diff='raw'))}</span> + h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8','replace'),diff2=cs2,diff1=cs1,diff='raw'))}</span> » <span>${h.link_to(_('download diff'), - h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8'),diff2=cs2,diff1=cs1,diff='download'))}</span> + h.url('files_diff_home',repo_name=c.repo_name,f_path=filenode.path.decode('utf-8','replace'),diff2=cs2,diff1=cs1,diff='download'))}</span> %endif </div> </div>
--- a/rhodecode/templates/files/files_browser.html Sun Feb 27 02:03:49 2011 +0100 +++ b/rhodecode/templates/files/files_browser.html Sun Feb 27 02:43:44 2011 +0100 @@ -66,7 +66,7 @@ %for cnt,node in enumerate(c.files_list): <tr class="parity${cnt%2}"> <td> - ${h.link_to(node.name,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.raw_id,f_path=node.path),class_=file_class(node))} + ${h.link_to(node.name,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.raw_id,f_path=node.path.decode('utf-8','replace')),class_=file_class(node))} </td> <td> %if node.is_file():