From: Per Strandh Date: Tue, 13 Oct 2009 20:09:12 GMT Subject: [PATCH] git-p4: Fixed bug that didn't allow spaces in the depot path [PATCH] git-p4: Fixed bug that didn't allow spaces in the depot path [PATCH] git-p4: Fixed bug that didn't allow spaces in the depot path Message-ID: <65D9329CA2AF94438F542D48F2A42E830F95F51514@GOT-SRV-005.QMATIC.local> git-p4 clone (and sync) did not work if the specified depot path contained spaces. Fixed by quoting the argument to the "p4 changes" and "p4 files" commands. Signed-off-by: Per Strandh --- contrib/fast-import/git-p4 | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/contrib/fast-import/git-p4 b/contrib/fast-import/git-p4 index e710219..01b6bbb 100755 --- a/contrib/fast-import/git-p4 +++ b/contrib/fast-import/git-p4 @@ -440,8 +440,8 @@ def originP4BranchesExist(): def p4ChangesForPaths(depotPaths, changeRange): assert depotPaths - output = p4_read_pipe_lines("changes " + ' '.join (["%s...%s" % (p, changeRange) - for p in depotPaths])) + output = p4_read_pipe_lines("changes \"" + ' '.join (["%s...%s" % (p, changeRange) + for p in depotPaths]) + "\"" ) changes = {} for line in output: @@ -1437,10 +1437,10 @@ class P4Sync(Command): newestRevision = 0 fileCnt = 0 - for info in p4CmdList("files " + for info in p4CmdList("files \"" + ' '.join(["%s...%s" % (p, revision) - for p in self.depotPaths])): + for p in self.depotPaths]) + "\""): if info['code'] == 'error': sys.stderr.write("p4 returned an error: %s\n" -- 1.6.3.msysgit.0 git-p4 clone (and sync) did not work if the specified depot path contained spaces. Fixed by quoting the argument to the "p4 changes" and "p4 files" commands. Signed-off-by: Per Strandh --- contrib/fast-import/git-p4 | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/contrib/fast-import/git-p4 b/contrib/fast-import/git-p4 index e710219..01b6bbb 100755 --- a/contrib/fast-import/git-p4 +++ b/contrib/fast-import/git-p4 @@ -440,8 +440,8 @@ def originP4BranchesExist(): def p4ChangesForPaths(depotPaths, changeRange): assert depotPaths - output = p4_read_pipe_lines("changes " + ' '.join (["%s...%s" % (p, changeRange) - for p in depotPaths])) + output = p4_read_pipe_lines("changes \"" + ' '.join (["%s...%s" % (p, changeRange) + for p in depotPaths]) + "\"" ) changes = {} for line in output: @@ -1437,10 +1437,10 @@ class P4Sync(Command): newestRevision = 0 fileCnt = 0 - for info in p4CmdList("files " + for info in p4CmdList("files \"" + ' '.join(["%s...%s" % (p, revision) - for p in self.depotPaths])): + for p in self.depotPaths]) + "\""): if info['code'] == 'error': sys.stderr.write("p4 returned an error: %s\n" -- 1.6.3.msysgit.0 git-p4 clone (and sync) did not work if the specified depot path contained spaces. Fixed by quoting the argument to the "p4 changes" and "p4 files" commands. Signed-off-by: Per Strandh --- contrib/fast-import/git-p4 | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/contrib/fast-import/git-p4 b/contrib/fast-import/git-p4 index e710219..01b6bbb 100755 --- a/contrib/fast-import/git-p4 +++ b/contrib/fast-import/git-p4 @@ -440,8 +440,8 @@ def originP4BranchesExist(): def p4ChangesForPaths(depotPaths, changeRange): assert depotPaths - output = p4_read_pipe_lines("changes " + ' '.join (["%s...%s" % (p, changeRange) - for p in depotPaths])) + output = p4_read_pipe_lines("changes \"" + ' '.join (["%s...%s" % (p, changeRange) + for p in depotPaths]) + "\"" ) changes = {} for line in output: @@ -1437,10 +1437,10 @@ class P4Sync(Command): newestRevision = 0 fileCnt = 0 - for info in p4CmdList("files " + for info in p4CmdList("files \"" + ' '.join(["%s...%s" % (p, revision) - for p in self.depotPaths])): + for p in self.depotPaths]) + "\""): if info['code'] == 'error': sys.stderr.write("p4 returned an error: %s\n" -- 1.6.3.msysgit.0