[PATCH 2 of 2 chg-port] commandserver: reset state of progress bar per command

Yuya Nishihara yuya at tcha.org
Wed Dec 23 08:09:25 CST 2015


# HG changeset patch
# User Yuya Nishihara <yuya at tcha.org>
# Date 1450104602 -32400
#      Mon Dec 14 23:50:02 2015 +0900
# Node ID bdabb610a7cbb97f162f0668eab6ac383b7a31e7
# Parent  38feb09b6b71681c7d141db4e013652fc2fe2c46
commandserver: reset state of progress bar per command

A progress bar is normally disabled in command-server session, but chg can
enable it. This patch makes sure the last-print time is measured per command.
Otherwise, progress.delay could be ineffective if a progbar was loaded before
forking worker process.

This patch is corresponding to the following change.

https://bitbucket.org/yuja/chg/commits/2dfe3e90b365

diff --git a/mercurial/commandserver.py b/mercurial/commandserver.py
--- a/mercurial/commandserver.py
+++ b/mercurial/commandserver.py
@@ -214,6 +214,11 @@ class server(object):
             self.repo.ui = self.repo.dirstate._ui = repoui
             self.repo.invalidateall()
 
+        # reset last-print time of progress bar per command
+        # (progbar is singleton, we don't have to do for all uis)
+        if copiedui._progbar:
+            copiedui._progbar.resetstate()
+
         for ui in uis:
             # any kind of interaction must use server channels, but chg may
             # replace channels by fully functional tty files. so nontty is


More information about the Mercurial-devel mailing list