Fix determination of relative URLs in SvnRaTransport._request_path(). (#139020)
authorJelmer Vernooij <jelmer@samba.org>
Wed, 12 Sep 2007 01:20:57 +0000 (03:20 +0200)
committerJelmer Vernooij <jelmer@samba.org>
Wed, 12 Sep 2007 01:20:57 +0000 (03:20 +0200)
NEWS
TODO
transport.py

diff --git a/NEWS b/NEWS
index 2f1f71f1b19b1de54ea3dce6101a44a4bda0d27f..ec2e1ff7d6607ecf789f4f05b4ffdd111f8c7447 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -4,6 +4,11 @@ bzr-svn 0.4.3  UNRELEASED
 
    * Avoid extra RA connection in LogWalker if it isn't going to be used.
 
+  BUG FIXES
+
+   * Fix determination of relative URLs in SvnRaTransport._request_path(). 
+     (#139020)
+
 bzr-svn 0.4.2  2007-09-09
 
   BUG FIXES
diff --git a/TODO b/TODO
index b38c7ccf6439d4fa5f37de402fb9ec1d554f427b..763a66b8292c32512b0200031ce6f7a14356dacf 100644 (file)
--- a/TODO
+++ b/TODO
@@ -4,6 +4,7 @@ todo:
 - avoid extra connect in logwalker?
 - free memory! (#54253)
 - tests for setting svk:merge from .bzr checkout
+- tests for http-specific SvnRaTransport._request_path() code
 - more blackbox tests
  - svn-import without scheme specified should guess
  - bzr missing
index f6dc91335c9baece790fbf121af82cf48a321c9c..6a14a496209e5a29b09f50db20cb1422ccd47043 100644 (file)
@@ -301,13 +301,15 @@ class SvnRaTransport(Transport):
         self._open_real_transport()
         self.mutter('svn switch -r %d -> %r' % (switch_rev, switch_url))
         self._mark_busy()
-        return self.Reporter(self, svn.ra.do_switch(self._ra, switch_rev, "", recurse, switch_url, *args, **kwargs))
+        return self.Reporter(self, svn.ra.do_switch(self._ra, switch_rev, "", 
+                             recurse, switch_url, *args, **kwargs))
 
     @convert_svn_error
     @needs_busy
     def get_log(self, path, from_revnum, to_revnum, *args, **kwargs):
         self.mutter('svn log %r:%r %r' % (from_revnum, to_revnum, path))
-        return svn.ra.get_log(self._ra, [self._request_path(path)], from_revnum, to_revnum, *args, **kwargs)
+        return svn.ra.get_log(self._ra, [self._request_path(path)], 
+                              from_revnum, to_revnum, *args, **kwargs)
 
     def _open_real_transport(self):
         if self._backing_url != self.svn_url:
@@ -357,7 +359,7 @@ class SvnRaTransport(Transport):
         if self._backing_url == self.svn_url:
             return relpath
         newrelpath = urlutils.join(
-                urlutils.relative_url(self._backing_url, self.svn_url),
+                urlutils.relative_url(self._backing_url+"/", self.svn_url+"/"),
                 relpath).rstrip("/")
         self.mutter('request path %r -> %r' % (relpath, newrelpath))
         return newrelpath