Patchwork D2333: py3: make sure we open the files in bytes mode

login
register
mail settings
Submitter phabricator
Date Feb. 18, 2018, 4:32 p.m.
Message ID <cbeaf7abc86d7d0193fdd622d6f17eec@localhost.localdomain>
Download mbox | patch
Permalink /patch/28114/
State Not Applicable
Headers show

Comments

phabricator - Feb. 18, 2018, 4:32 p.m.
This revision was automatically updated to reflect the committed changes.
Closed by commit rHG7e025d4c6f61: py3: make sure we open the files in bytes mode (authored by pulkit, committed by ).

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D2333?vs=5879&id=5888

REVISION DETAIL
  https://phab.mercurial-scm.org/D2333

AFFECTED FILES
  mercurial/posix.py

CHANGE DETAILS




To: pulkit, #hg-reviewers, yuja, indygreg
Cc: yuja, mercurial-devel

Patch

diff --git a/mercurial/posix.py b/mercurial/posix.py
--- a/mercurial/posix.py
+++ b/mercurial/posix.py
@@ -113,24 +113,24 @@ 
     if l:
         if not stat.S_ISLNK(s):
             # switch file to link
-            fp = open(f)
+            fp = open(f, 'wb')
             data = fp.read()
             fp.close()
             unlink(f)
             try:
                 os.symlink(data, f)
             except OSError:
                 # failed to make a link, rewrite file
-                fp = open(f, "w")
+                fp = open(f, "wb")
                 fp.write(data)
                 fp.close()
         # no chmod needed at this point
         return
     if stat.S_ISLNK(s):
         # switch link to file
         data = os.readlink(f)
         unlink(f)
-        fp = open(f, "w")
+        fp = open(f, "wb")
         fp.write(data)
         fp.close()
         s = 0o666 & ~umask # avoid restatting for chmod