diff options
Diffstat (limited to 'git')
-rw-r--r-- | git/cmd.py | 3 | ||||
-rw-r--r-- | git/repo/base.py | 8 |
2 files changed, 8 insertions, 3 deletions
@@ -539,7 +539,8 @@ class Git(LazyMixin): cmd_not_found_exception = OSError # end handle - log.debug("Popen(%s, cwd=%s, universal_newlines=%s", command, cwd, universal_newlines) + log.debug("Popen(%s, cwd=%s, universal_newlines=%s, shell=%s)", + command, cwd, universal_newlines, shell) try: proc = Popen(command, env=env, diff --git a/git/repo/base.py b/git/repo/base.py index 947d77d2..26753bab 100644 --- a/git/repo/base.py +++ b/git/repo/base.py @@ -899,8 +899,12 @@ class Repo(object): try: proc = git.clone(url, path, with_extended_output=True, as_process=True, v=True, **add_progress(kwargs, git, progress)) - progress_handler = progress and progress.new_message_handler() or None - handle_process_output(proc, None, progress_handler, finalize_process) + if progress: + handle_process_output(proc, None, progress.new_message_handler(), finalize_process) + else: + (stdout, stderr) = proc.communicate() # FIXME: Will block of outputs are big! + finalize_process(proc, stderr=stderr) + # end handle progress finally: if prev_cwd is not None: os.chdir(prev_cwd) |