diff -r 92bca12328d1 -r a91c62752d08 mercurial/worker.py --- a/mercurial/worker.py Sat Feb 25 12:33:37 2017 +0900 +++ b/mercurial/worker.py Sat Feb 25 12:48:50 2017 +0900 @@ -148,12 +148,16 @@ # may do some clean-ups which could cause surprises like deadlock. # see sshpeer.cleanup for example. try: - scmutil.callcatch(ui, workerfunc) + try: + scmutil.callcatch(ui, workerfunc) + finally: + ui.flush() except KeyboardInterrupt: os._exit(255) except: # never return, therefore no re-raises try: ui.traceback() + ui.flush() finally: os._exit(255) else: