diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-06-14 13:57:53 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-06-14 14:07:18 +0100 |
commit | 1faf02599af12a62bbed0bce5fda6a72df63ec30 (patch) | |
tree | 9cfad38b28669b44fb96c0a522175951faf95c5b /bitbake/lib | |
parent | d43d3b007eac502c9c1ba8f5ff5cc8f984c84ddf (diff) | |
download | poky-1faf02599af12a62bbed0bce5fda6a72df63ec30.tar.gz |
fetch2/local: Ensure quoting is handled correctly from the url
The commit 420eb112a4f (fetch2: quote/unquote url paths) caused a regression
since local file urls containing quoted characters are no longer being handled
correctly. This fixes things so the url is dequoted correctly, fixing various
fetcher failures with recipes like "gtk+".
[YOCTO #2558]
(Bitbake rev: 95c0595d66b3f8a5f0716662ba2a878600f312ea)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib')
-rw-r--r-- | bitbake/lib/bb/fetch2/local.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/bitbake/lib/bb/fetch2/local.py b/bitbake/lib/bb/fetch2/local.py index a0ed4442fb..1f4ec371a4 100644 --- a/bitbake/lib/bb/fetch2/local.py +++ b/bitbake/lib/bb/fetch2/local.py | |||
@@ -26,6 +26,7 @@ BitBake build tools. | |||
26 | # Based on functions from the base bb module, Copyright 2003 Holger Schurig | 26 | # Based on functions from the base bb module, Copyright 2003 Holger Schurig |
27 | 27 | ||
28 | import os | 28 | import os |
29 | import urllib | ||
29 | import bb | 30 | import bb |
30 | import bb.utils | 31 | import bb.utils |
31 | from bb import data | 32 | from bb import data |
@@ -40,7 +41,7 @@ class Local(FetchMethod): | |||
40 | 41 | ||
41 | def urldata_init(self, ud, d): | 42 | def urldata_init(self, ud, d): |
42 | # We don't set localfile as for this fetcher the file is already local! | 43 | # We don't set localfile as for this fetcher the file is already local! |
43 | ud.basename = os.path.basename(ud.url.split("://")[1].split(";")[0]) | 44 | ud.basename = os.path.basename(urllib.unquote(ud.url.split("://")[1].split(";")[0])) |
44 | return | 45 | return |
45 | 46 | ||
46 | def localpath(self, url, urldata, d): | 47 | def localpath(self, url, urldata, d): |
@@ -49,6 +50,7 @@ class Local(FetchMethod): | |||
49 | """ | 50 | """ |
50 | path = url.split("://")[1] | 51 | path = url.split("://")[1] |
51 | path = path.split(";")[0] | 52 | path = path.split(";")[0] |
53 | path = urllib.unquote(path) | ||
52 | newpath = path | 54 | newpath = path |
53 | if path[0] != "/": | 55 | if path[0] != "/": |
54 | filespath = data.getVar('FILESPATH', d, True) | 56 | filespath = data.getVar('FILESPATH', d, True) |