From: Richard Purdie Date: Fri, 11 Feb 2011 12:06:44 +0000 (+0000) Subject: bitbake/fetch2: Correctly handle git mirror tarball fetching X-Git-Tag: 2011-1~2382 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=7f30131faaa5e3fdb1191c9da95c5683cefafeb5;p=openembedded-core.git bitbake/fetch2: Correctly handle git mirror tarball fetching Signed-off-by: Richard Purdie --- diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py index d168cdff6b..b9e145a62b 100644 --- a/bitbake/lib/bb/fetch2/__init__.py +++ b/bitbake/lib/bb/fetch2/__init__.py @@ -441,10 +441,11 @@ def try_mirrors(d, origud, mirrors, check = False): # We may be obtaining a mirror tarball which needs further processing by the real fetcher # If that tarball is a local file:// we need to provide a symlink to it dldir = ld.getVar("DL_DIR", True) - if not ud.localpath.startswith(dldir): - if os.path.basename(ud.localpath) != os.path.basename(origud.localpath): - os.symlink(ud.localpath, os.path.join(dldir, os.path.basename(ud.localpath))) - return None + if os.path.basename(ud.localpath) != os.path.basename(origud.localpath): + dest = os.path.join(dldir, os.path.basename(ud.localpath)) + if not os.path.exists(dest): + os.symlink(ud.localpath, dest) + return None # Otherwise the result is a local file:// and we symlink to it if not os.path.exists(origud.localpath): os.symlink(ud.localpath, origud.localpath)