# # # patch "ChangeLog" # from [1abb9ba9816cffc46d1e862c1092783b447bb48e] # to [3f046bf2dc333bdf0170e7d97ec08d933be77c11] # # patch "templates/branch.html" # from [b06c53458ef16e6810e5307bae103cf02cc4ccb7] # to [7f162c333735ef7f64cd507d524653155972ca9f] # # patch "templates/branchchangesrss.html" # from [d8a477c41c496f672863755ad8c79e840715ebcc] # to [46271c2dacb94ed9127e12c9c5f5e71333e68f9d] # # patch "viewmtn.py" # from [9f4b7cd096f5b356bb57935c61257d5369036508] # to [439428bb3f115a9f17f623b4717c65db5aa76986] # ============================================================ --- ChangeLog 1abb9ba9816cffc46d1e862c1092783b447bb48e +++ ChangeLog 3f046bf2dc333bdf0170e7d97ec08d933be77c11 @@ -1,3 +1,9 @@ +2007-04-01 Grahame Bowland + + * fix a number of places where dynamic_join() + was called with the first argument beginning with '/' + resulting in an absolute link to / + 2007-03-30 Grahame Bowland * don't fail entirely if xdg_* can't be found; ============================================================ --- templates/branch.html b06c53458ef16e6810e5307bae103cf02cc4ccb7 +++ templates/branch.html 7f162c333735ef7f64cd507d524653155972ca9f @@ -1,10 +1,11 @@ #extends base #def extramenu Branch $branch.name: Changes | -Head revision -Tags +Head revision | +Tags | +RSS #end def #def rssheaders ============================================================ --- templates/branchchangesrss.html d8a477c41c496f672863755ad8c79e840715ebcc +++ templates/branchchangesrss.html 46271c2dacb94ed9127e12c9c5f5e71333e68f9d @@ -1,9 +1,9 @@ en-us Changes to branch $branch.name - $dynamic_join('/') + $dynamic_join('branch/changes/%s' % $urllib_quote($branch.name, safe='')) Changes to branch $branch.name ============================================================ --- viewmtn.py 9f4b7cd096f5b356bb57935c61257d5369036508 +++ viewmtn.py 439428bb3f115a9f17f623b4717c65db5aa76986 @@ -309,7 +309,7 @@ class Renderer: self.terms = { 'dynamic_uri_path' : config.dynamic_uri_path, 'dynamic_join' : dynamic_join, - 'urllib_quote' : urllib.quote, + 'urllib_quote' : urllib.quote, 'static_uri_path' : config.static_uri_path, 'static_join' : static_join, 'link' : link, @@ -550,7 +550,7 @@ class RevisionInfo(RevisionPage): output_png, output_imagemap = ancestry_graph(revision) if os.access(output_imagemap, os.R_OK): imagemap = open(output_imagemap).read().replace('\\n', ' by ') - imageuri = dynamic_join('/revision/graph/' + revision) + imageuri = dynamic_join('revision/graph/' + revision) else: imagemap = imageuri = None renderer.render('revisioninfo.html', @@ -812,7 +812,7 @@ class RevisionBrowse(RevisionPage): yield "even" def mime_icon(mime_type): - return dynamic_join('/mimeicon/' + mime_type) + return dynamic_join('mimeicon/' + mime_type) renderer.render('revisionbrowse.html', branches=branches, @@ -1047,12 +1047,12 @@ class BranchHead: if len(heads) == 0: return web.notfound() def proxyurl(revision): - return dynamic_join('/revision/' + proxy_to + '/' + revision + urllib.quote(extra_path)) + return dynamic_join('revision/' + proxy_to + '/' + revision + urllib.quote(extra_path)) if len(heads) == 1 or head_method == 'anyhead': web.redirect(proxyurl(heads[0])) else: # present an option to the user to choose the head - anyhead = 'link' % (dynamic_join('/branch/anyhead/' + proxy_to + '/' + urllib.quote(branch.name, safe = ''))) + anyhead = 'link' % (dynamic_join('branch/anyhead/' + proxy_to + '/' + urllib.quote(branch.name, safe = ''))) head_links = [] for revision in heads: author, date = '', ''