summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2012-06-14 13:57:53 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-06-14 14:07:18 +0100
commit1faf02599af12a62bbed0bce5fda6a72df63ec30 (patch)
tree9cfad38b28669b44fb96c0a522175951faf95c5b /bitbake
parentd43d3b007eac502c9c1ba8f5ff5cc8f984c84ddf (diff)
downloadpoky-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')
-rw-r--r--bitbake/lib/bb/fetch2/local.py4
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
28import os 28import os
29import urllib
29import bb 30import bb
30import bb.utils 31import bb.utils
31from bb import data 32from 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)