# HG changeset patch # User Ludovic Chabant # Date 1484124820 28800 # Node ID d7c7b1ed8dbc91070b731ca9509607f6a6ef3680 # Parent 179128d982eb24c1e80da1afe0b348a7dc4eee4c core: Fix bug with determining absolute URLs. diff -r 179128d982eb -r d7c7b1ed8dbc wikked/utils.py --- a/wikked/utils.py Wed Jan 11 00:52:59 2017 -0800 +++ b/wikked/utils.py Wed Jan 11 00:53:40 2017 -0800 @@ -49,10 +49,14 @@ def get_absolute_url(base_url, url, quote=False): - endpoint, base_url = split_page_url(base_url) + base_endpoint, base_url = split_page_url(base_url) if base_url[0] != '/': raise ValueError("The base URL must be absolute. Got: %s" % base_url) + endpoint, url = split_page_url(url) + if not endpoint: + endpoint = base_endpoint + if url.startswith('/'): # Absolute page URL. abs_url = url @@ -67,6 +71,7 @@ urldir = os.path.dirname(base_url) raw_abs_url = os.path.join(urldir, url) abs_url = os.path.normpath(raw_abs_url).replace('\\', '/') + if quote: abs_url = urllib.parse.quote(abs_url.encode('utf-8')) if endpoint: