diff mercurial/worker.py @ 31696:9d3d56aa1a9f

worker: flush ui buffers before running the worker a91c6275 introduces flushing ui buffers after a worker finished. If the ui was not flushed before the worker was started, fork will copy the existing buffers to the worker. This causes messages issued before the worker started to be written to the terminal for each worker. We are now flushing the ui before we start a worker and add an appropriate test which will fail before this patch.
author David Soria Parra <davidsp@fb.com>
date Tue, 28 Mar 2017 10:21:38 -0700
parents 13bbcd56c57a
children 8f8ad0139b8b
line wrap: on
line diff
--- a/mercurial/worker.py	Tue Mar 28 08:40:12 2017 -0700
+++ b/mercurial/worker.py	Tue Mar 28 10:21:38 2017 -0700
@@ -133,6 +133,7 @@
         if problem[0]:
             killworkers()
     oldchldhandler = signal.signal(signal.SIGCHLD, sigchldhandler)
+    ui.flush()
     for pargs in partition(args, workers):
         pid = os.fork()
         if pid == 0: