diff options
Diffstat (limited to 'bitbake/lib')
-rw-r--r-- | bitbake/lib/bb/fetch2/git.py | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/bitbake/lib/bb/fetch2/git.py b/bitbake/lib/bb/fetch2/git.py index 07064c694f..b97967b487 100644 --- a/bitbake/lib/bb/fetch2/git.py +++ b/bitbake/lib/bb/fetch2/git.py | |||
@@ -63,6 +63,7 @@ import errno | |||
63 | import fnmatch | 63 | import fnmatch |
64 | import os | 64 | import os |
65 | import re | 65 | import re |
66 | import shlex | ||
66 | import subprocess | 67 | import subprocess |
67 | import tempfile | 68 | import tempfile |
68 | import bb | 69 | import bb |
@@ -342,7 +343,7 @@ class Git(FetchMethod): | |||
342 | # We do this since git will use a "-l" option automatically for local urls where possible | 343 | # We do this since git will use a "-l" option automatically for local urls where possible |
343 | if repourl.startswith("file://"): | 344 | if repourl.startswith("file://"): |
344 | repourl = repourl[7:] | 345 | repourl = repourl[7:] |
345 | clone_cmd = "LANG=C %s clone --bare --mirror \"%s\" %s --progress" % (ud.basecmd, repourl, ud.clonedir) | 346 | clone_cmd = "LANG=C %s clone --bare --mirror %s %s --progress" % (ud.basecmd, shlex.quote(repourl), ud.clonedir) |
346 | if ud.proto.lower() != 'file': | 347 | if ud.proto.lower() != 'file': |
347 | bb.fetch2.check_network_access(d, clone_cmd, ud.url) | 348 | bb.fetch2.check_network_access(d, clone_cmd, ud.url) |
348 | progresshandler = GitProgressHandler(d) | 349 | progresshandler = GitProgressHandler(d) |
@@ -354,8 +355,8 @@ class Git(FetchMethod): | |||
354 | if "origin" in output: | 355 | if "origin" in output: |
355 | runfetchcmd("%s remote rm origin" % ud.basecmd, d, workdir=ud.clonedir) | 356 | runfetchcmd("%s remote rm origin" % ud.basecmd, d, workdir=ud.clonedir) |
356 | 357 | ||
357 | runfetchcmd("%s remote add --mirror=fetch origin \"%s\"" % (ud.basecmd, repourl), d, workdir=ud.clonedir) | 358 | runfetchcmd("%s remote add --mirror=fetch origin %s" % (ud.basecmd, shlex.quote(repourl)), d, workdir=ud.clonedir) |
358 | fetch_cmd = "LANG=C %s fetch -f --progress \"%s\" refs/*:refs/*" % (ud.basecmd, repourl) | 359 | fetch_cmd = "LANG=C %s fetch -f --progress %s refs/*:refs/*" % (ud.basecmd, shlex.quote(repourl)) |
359 | if ud.proto.lower() != 'file': | 360 | if ud.proto.lower() != 'file': |
360 | bb.fetch2.check_network_access(d, fetch_cmd, ud.url) | 361 | bb.fetch2.check_network_access(d, fetch_cmd, ud.url) |
361 | progresshandler = GitProgressHandler(d) | 362 | progresshandler = GitProgressHandler(d) |
@@ -504,7 +505,7 @@ class Git(FetchMethod): | |||
504 | raise bb.fetch2.UnpackError("No up to date source found: " + "; ".join(source_error), ud.url) | 505 | raise bb.fetch2.UnpackError("No up to date source found: " + "; ".join(source_error), ud.url) |
505 | 506 | ||
506 | repourl = self._get_repo_url(ud) | 507 | repourl = self._get_repo_url(ud) |
507 | runfetchcmd("%s remote set-url origin \"%s\"" % (ud.basecmd, repourl), d, workdir=destdir) | 508 | runfetchcmd("%s remote set-url origin %s" % (ud.basecmd, shlex.quote(repourl)), d, workdir=destdir) |
508 | 509 | ||
509 | if self._contains_lfs(ud, d, destdir): | 510 | if self._contains_lfs(ud, d, destdir): |
510 | if need_lfs and not self._find_git_lfs(d): | 511 | if need_lfs and not self._find_git_lfs(d): |
@@ -623,8 +624,8 @@ class Git(FetchMethod): | |||
623 | d.setVar('_BB_GIT_IN_LSREMOTE', '1') | 624 | d.setVar('_BB_GIT_IN_LSREMOTE', '1') |
624 | try: | 625 | try: |
625 | repourl = self._get_repo_url(ud) | 626 | repourl = self._get_repo_url(ud) |
626 | cmd = "%s ls-remote \"%s\" %s" % \ | 627 | cmd = "%s ls-remote %s %s" % \ |
627 | (ud.basecmd, repourl, search) | 628 | (ud.basecmd, shlex.quote(repourl), search) |
628 | if ud.proto.lower() != 'file': | 629 | if ud.proto.lower() != 'file': |
629 | bb.fetch2.check_network_access(d, cmd, repourl) | 630 | bb.fetch2.check_network_access(d, cmd, repourl) |
630 | output = runfetchcmd(cmd, d, True) | 631 | output = runfetchcmd(cmd, d, True) |