From: Hans-Christoph Steiner Date: Mon, 5 Feb 2018 12:22:06 +0000 (+0100) Subject: git-svn: use '--' to isolate user input in command lines X-Git-Tag: 1.0.1~14^2~4 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=c67ed5e85f8f6e021a0630967457e0be4c12bca0;p=fdroidserver.git git-svn: use '--' to isolate user input in command lines --- diff --git a/fdroidserver/common.py b/fdroidserver/common.py index 7f44a4d3..340d296c 100644 --- a/fdroidserver/common.py +++ b/fdroidserver/common.py @@ -975,6 +975,7 @@ class vcs_gitsvn(vcs): if not os.path.exists(self.local): # Brand new checkout gitsvn_args = ['svn', 'clone'] + remote = None if ';' in self.remote: remote_split = self.remote.split(';') for i in remote_split[1:]: @@ -984,17 +985,15 @@ class vcs_gitsvn(vcs): gitsvn_args.extend(['-t', i[5:]]) elif i.startswith('branches='): gitsvn_args.extend(['-b', i[9:]]) - gitsvn_args.extend([remote_split[0], self.local]) - p = self.git(gitsvn_args, output=False) - if p.returncode != 0: - self.clone_failed = True - raise VCSException("Git svn clone failed", p.output) + remote = remote_split[0] else: - gitsvn_args.extend([self.remote, self.local]) - p = self.git(gitsvn_args, output=False) - if p.returncode != 0: - self.clone_failed = True - raise VCSException("Git svn clone failed", p.output) + remote = self.remote + + gitsvn_args.extend(['--', remote, self.local]) + p = self.git(gitsvn_args) + if p.returncode != 0: + self.clone_failed = True + raise VCSException(_('git svn clone failed'), p.output) self.checkrepo() else: self.checkrepo()