From 72f04e760d99d6be99a82d8fd0efc0a136da3e7a Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 22 Jun 2012 12:53:56 +0100 Subject: bitbake: fetch2: Ensure star character doesn't end up in mirror tarball names If '*' does end up in mirror urls accidently, some strange things can break since supports_checksum() looks for this, ud.localpath can then get ignored and this can lead to empty directories being downloaded "successfully". '*' is a special case for file urls only at this point so remove any entries that accidentlly make it in through url mapping. (Bitbake rev: 1369bec2404d942acc3618a8d005ec6868dcfd41) Signed-off-by: Richard Purdie --- bitbake/lib/bb/fetch2/__init__.py | 2 +- bitbake/lib/bb/fetch2/git.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py index 844f24a..a38cb8f 100644 --- a/bitbake/lib/bb/fetch2/__init__.py +++ b/bitbake/lib/bb/fetch2/__init__.py @@ -492,7 +492,7 @@ def build_mirroruris(origud, mirrors, ld): replacements["HOST"] = origud.host replacements["PATH"] = origud.path replacements["BASENAME"] = origud.path.split("/")[-1] - replacements["MIRRORNAME"] = origud.host.replace(':','.') + origud.path.replace('/', '.') + replacements["MIRRORNAME"] = origud.host.replace(':','.') + origud.path.replace('/', '.').replace('*', '.') def adduri(uri, ud, uris, uds): for line in mirrors: diff --git a/bitbake/lib/bb/fetch2/git.py b/bitbake/lib/bb/fetch2/git.py index 1c9a01c..3676cc3 100644 --- a/bitbake/lib/bb/fetch2/git.py +++ b/bitbake/lib/bb/fetch2/git.py @@ -130,7 +130,7 @@ class Git(FetchMethod): ud.branches[name] = ud.revisions[name] ud.revisions[name] = self.latest_revision(ud.url, ud, d, name) - gitsrcname = '%s%s' % (ud.host.replace(':','.'), ud.path.replace('/', '.')) + gitsrcname = '%s%s' % (ud.host.replace(':','.'), ud.path.replace('/', '.').replace('*', '.')) # for rebaseable git repo, it is necessary to keep mirror tar ball # per revision, so that even the revision disappears from the # upstream repo in the future, the mirror will remain intact and still -- cgit v1.1