# # # patch "ChangeLog" # from [c525b3dc42d5ed3f6dd2be91be0df8e0197569ee] # to [ffae33a4ed59b6f6fe964e79afedd57c6040a7e3] # # patch "templates/branch.html" # from [b06c53458ef16e6810e5307bae103cf02cc4ccb7] # to [7f162c333735ef7f64cd507d524653155972ca9f] # # patch "templates/branchchangesrss.html" # from [d8a477c41c496f672863755ad8c79e840715ebcc] # to [46271c2dacb94ed9127e12c9c5f5e71333e68f9d] # # patch "viewmtn.py" # from [f759b512037a45d719c72160625c457306be6e59] # to [439428bb3f115a9f17f623b4717c65db5aa76986] # ============================================================ --- ChangeLog c525b3dc42d5ed3f6dd2be91be0df8e0197569ee +++ ChangeLog ffae33a4ed59b6f6fe964e79afedd57c6040a7e3 @@ -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-31 Grahame Bowland * remove accidental hardcoded absolute URI in ============================================================ --- 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 f759b512037a45d719c72160625c457306be6e59 +++ viewmtn.py 439428bb3f115a9f17f623b4717c65db5aa76986 @@ -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 = '', ''