Only in albatross-1.10pre2-patched/albatross: .randompage.py.swp
diff -ru albatross-1.10pre2.2/albatross/app.py albatross-1.10pre2-patched/albatross/app.py
--- albatross-1.10pre2.2/albatross/app.py	2003-07-08 15:30:20.000000000 +0100
+++ albatross-1.10pre2-patched/albatross/app.py	2003-07-08 12:17:35.000000000 +0100
@@ -191,19 +191,22 @@
         return self.app.base_url()
 
     def current_url(self):
-        uri = self.request.get_uri()
-        scheme, netloc, path = urlparse.urlparse(uri)[:3]
-        return path
+        if not self.request.get_path_info():
+            this_path = ''
+        else:
+            this_path = urlparse.urlparse(self.request.get_path_info())[2]
+        base_path = urlparse.urlparse(self.app.base_url())[2]
+        if base_path and base_path[-1] == '/':
+            if this_path and this_path[0] == '/':
+                this_path = this_path[1:]
+        return base_path + this_path
 
     def redirect_url(self, loc):
-        this_path = urlparse.urlparse(self.request.get_uri())[2]
         base_path = urlparse.urlparse(self.app.base_url())[2]
-        pos = this_path.find(base_path)
-        new_base = this_path[:pos + len(base_path)]
-        if new_base[-1] != '/':
-            new_base = new_base + '/'
+        if base_path[-1] != '/':
+            base_path = base_path + '/'
         return urlparse.urlunparse(('http', self.request.get_servername(),
-                                    new_base + loc, '', '', ''))
+                                    base_path + loc, '', '', ''))
 
     def redirect(self, loc):
         scheme, netloc, path = urlparse.urlparse(loc)[:3]
diff -ru albatross-1.10pre2.2/albatross/randompage.py albatross-1.10pre2-patched/albatross/randompage.py
--- albatross-1.10pre2.2/albatross/randompage.py	2003-07-05 08:52:40.000000000 +0100
+++ albatross-1.10pre2-patched/albatross/randompage.py	2003-07-08 15:30:56.000000000 +0100
@@ -18,14 +18,9 @@
 
     def load_page(self, ctx):
         # Get page name from request URI
-        uri = ctx.request.get_uri()
-        page = ''
-        try:
-            base_path = urlparse.urlparse(self.base_url())[2]
-            uri_path = urlparse.urlparse(uri)[2]
-            page = uri_path.split(base_path, 1)[1]
-        except IndexError:
-            pass
+        page = ctx.request.get_path_info()
+        if page and page[0] == '/':
+            page = page[1:]
         if not page:
             ctx.redirect(self.start_page())
 
