[PATCH 1 of 5] cmdserver: copy repo.ui before running commands

Idan Kamara idankk86 at gmail.com
Fri Jun 24 11:50:59 CDT 2011


# HG changeset patch
# User Idan Kamara <idankk86 at gmail.com>
# Date 1308933839 -10800
# Branch stable
# Node ID 63dca9aa6e15cf7d42e4018e73d016f3db0746d8
# Parent  c465f6530c27360d89154f6febcd37adc9961912
cmdserver: copy repo.ui before running commands

diff -r c465f6530c27 -r 63dca9aa6e15 mercurial/commandserver.py
--- a/mercurial/commandserver.py	Fri Jun 24 19:38:28 2011 +0300
+++ b/mercurial/commandserver.py	Fri Jun 24 19:43:59 2011 +0300
@@ -143,6 +143,7 @@
                 logfile = open(logpath, 'a')
 
         self.repo = repo
+        self.repoui = repo.ui
 
         if mode == 'pipe':
             self.cerr = channeledoutput(sys.stderr, sys.stdout, 'e')
@@ -176,7 +177,9 @@
         else:
             args = self._read(length).split('\0')
 
-        # copy the ui so changes to it don't persist between requests
+        # copy the uis so changes (e.g. --config or --verbose) don't
+        # persist between requests
+        self.repo.ui = self.repo.dirstate._ui = self.repoui.copy()
         req = dispatch.request(args, self.ui.copy(), self.repo, self.cin,
                                self.cout, self.cerr)
 


More information about the Mercurial-devel mailing list