From 532f96ddcc2e3641db25b08d4ca93ce4d196a984 Mon Sep 17 00:00:00 2001 From: Christopher Larson Date: Mon, 21 May 2012 16:34:49 -0700 Subject: fetch2: quote/unquote url paths This ensures we can handle things like %-encoded characters in the path portion of urls. (Bitbake rev: b1dbc24ebcc4e5100c32568c2c41fd982fb4bcce) Signed-off-by: Christopher Larson Signed-off-by: Richard Purdie --- bitbake/lib/bb/fetch2/__init__.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'bitbake') diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py index 6cd389a296..0b976c4079 100644 --- a/bitbake/lib/bb/fetch2/__init__.py +++ b/bitbake/lib/bb/fetch2/__init__.py @@ -28,6 +28,7 @@ from __future__ import absolute_import from __future__ import print_function import os, re import logging +import urllib import bb.persist_data, bb.utils from bb import data @@ -147,14 +148,14 @@ def decodeurl(url): s1, s2 = s.split('=') p[s1] = s2 - return (type, host, path, user, pswd, p) + return type, host, urllib.unquote(path), user, pswd, p def encodeurl(decoded): """Encodes a URL from tokens (scheme, network location, path, user, password, parameters). """ - (type, host, path, user, pswd, p) = decoded + type, host, path, user, pswd, p = decoded if not path: raise MissingParameterError('path', "encoded from the data %s" % str(decoded)) @@ -168,7 +169,7 @@ def encodeurl(decoded): url += "@" if host and type != "file": url += "%s" % host - url += "%s" % path + url += "%s" % urllib.quote(path) if p: for parm in p: url += ";%s=%s" % (parm, p[parm]) -- cgit v1.2.3-54-g00ecf