Fix default cwd value and the timing of the result code check

Review URL: http://codereview.chromium.org/474002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@34166 0039d316-1c4b-4281-b951-d872f2087c98
experimental/szager/collated-output
maruel@chromium.org 16 years ago
parent 82f2c08a5b
commit ffe96f07a9

@ -187,6 +187,8 @@ class GitWrapper(SCMWrapper, scm.GIT):
def _Run(self, args, cwd=None, checkrc=True, redirect_stdout=True): def _Run(self, args, cwd=None, checkrc=True, redirect_stdout=True):
# TODO(maruel): Merge with Capture? # TODO(maruel): Merge with Capture?
if cwd is None:
cwd = self.checkout_path
stdout=None stdout=None
if redirect_stdout: if redirect_stdout:
stdout=subprocess.PIPE stdout=subprocess.PIPE
@ -195,10 +197,10 @@ class GitWrapper(SCMWrapper, scm.GIT):
cmd = [self.COMMAND] cmd = [self.COMMAND]
cmd.extend(args) cmd.extend(args)
sp = subprocess.Popen(cmd, cwd=cwd, stdout=stdout) sp = subprocess.Popen(cmd, cwd=cwd, stdout=stdout)
output = sp.communicate()[0]
if checkrc and sp.returncode: if checkrc and sp.returncode:
raise gclient_utils.Error('git command %s returned %d' % raise gclient_utils.Error('git command %s returned %d' %
(args[0], sp.returncode)) (args[0], sp.returncode))
output = sp.communicate()[0]
if output is not None: if output is not None:
return output.strip() return output.strip()

Loading…
Cancel
Save