hgext/chgserver.py
changeset 28159 d2d04d1d2f92
parent 28158 7cc57a531f0c
child 28223 0a853dc9b306
--- a/hgext/chgserver.py	Tue Feb 16 19:21:05 2016 +0000
+++ b/hgext/chgserver.py	Mon Feb 15 14:28:17 2016 +0000
@@ -289,6 +289,12 @@
         _log('chdir to %r\n' % path)
         os.chdir(path)
 
+    def setumask(self):
+        """Change umask"""
+        mask = struct.unpack('>I', self._read(4))[0]
+        _log('setumask %r\n' % mask)
+        os.umask(mask)
+
     def getpager(self):
         """Read cmdargs and write pager command to r-channel if enabled
 
@@ -341,7 +347,8 @@
     capabilities.update({'attachio': attachio,
                          'chdir': chdir,
                          'getpager': getpager,
-                         'setenv': setenv})
+                         'setenv': setenv,
+                         'setumask': setumask})
 
 # copied from mercurial/commandserver.py
 class _requesthandler(SocketServer.StreamRequestHandler):