[PATCH 08 of 10 py3] server: write out pid using bytes IO instead of str IO

Augie Fackler raf at durin42.com
Mon May 29 10:32:30 EDT 2017


# HG changeset patch
# User Augie Fackler <raf at durin42.com>
# Date 1496000586 14400
#      Sun May 28 15:43:06 2017 -0400
# Node ID c52ab13885c505252bddf459e3ef86fe1fb8f560
# Parent  44be9a86f325e1cc3d27ce001700652ce2305178
server: write out pid using bytes IO instead of str IO

diff --git a/mercurial/server.py b/mercurial/server.py
--- a/mercurial/server.py
+++ b/mercurial/server.py
@@ -29,11 +29,11 @@ def runservice(opts, parentfn=None, init
     def writepid(pid):
         if opts['pid_file']:
             if appendpid:
-                mode = 'a'
+                mode = 'ab'
             else:
-                mode = 'w'
+                mode = 'wb'
             fp = open(opts['pid_file'], mode)
-            fp.write(str(pid) + '\n')
+            fp.write(str(pid).encode('latin1') + '\n')
             fp.close()
 
     if opts['daemon'] and not opts['daemon_postexec']:


More information about the Mercurial-devel mailing list