Source

CherryPy / cherrypy / lib / http.py

The branch '815-urljoin' does not exist.
Diff from to

cherrypy/lib/http.py

     This will correctly join a SCRIPT_NAME and PATH_INFO into the
     original URL, even if either atom is blank.
     """
-    url = "/".join([x for x in atoms if x])
-    while "//" in url:
-        url = url.replace("//", "/")
+    if atoms:
+        url = "\x00".join(atoms)
+        url = url.replace("/\x00/", "/")
+        url = url.replace("\x00/", "/")
+        url = url.replace("/\x00", "/")
+    else:
+        url = ""
     # Special-case the final url of "", and return "/" instead.
     return url or "/"