diff options
Diffstat (limited to 'git/repo/base.py')
-rw-r--r-- | git/repo/base.py | 8 |
1 files changed, 6 insertions, 2 deletions
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) |