hgext/chgserver.py
changeset 28014 83fc0c055664
parent 27793 8c9bbf5cd349
child 28158 7cc57a531f0c
--- a/hgext/chgserver.py	Fri Feb 05 16:54:01 2016 -0600
+++ b/hgext/chgserver.py	Tue Jan 19 18:20:13 2016 +0000
@@ -354,6 +354,10 @@
 # copied from mercurial/commandserver.py
 class _requesthandler(SocketServer.StreamRequestHandler):
     def handle(self):
+        # use a different process group from the master process, making this
+        # process pass kernel "is_current_pgrp_orphaned" check so signals like
+        # SIGTSTP, SIGTTIN, SIGTTOU are not ignored.
+        os.setpgid(0, 0)
         ui = self.server.ui
         repo = self.server.repo
         sv = chgcmdserver(ui, repo, self.rfile, self.wfile, self.connection)