[PATCH py3] setup: hide octal literals inside strings so they're portable (issue4554)
Augie Fackler
raf at durin42.com
Tue May 5 16:33:16 UTC 2015
# HG changeset patch
# User Augie Fackler <augie at google.com>
# Date 1428867370 14400
# Sun Apr 12 15:36:10 2015 -0400
# Node ID b6f858be11d6eeb8f9f3595773782f08e7fd1a46
# Parent e5b507efb36e2b9ad8edb1a38459d26c934d74dd
setup: hide octal literals inside strings so they're portable (issue4554)
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -408,11 +408,12 @@ class hginstalllib(install_lib):
# Persist executable bit (apply it to group and other if user
# has it)
if st[stat.ST_MODE] & stat.S_IXUSR:
- setmode = 0755
+ setmode = int('0755', 8)
else:
- setmode = 0644
- os.chmod(dst, (stat.S_IMODE(st[stat.ST_MODE]) & ~0777) |
- setmode)
+ setmode = int('0644', 8)
+ m = stat.S_IMODE(st[stat.ST_MODE])
+ m = (m & ~int('0777', 8)) | setmode
+ os.chmod(dst, m)
file_util.copy_file = copyfileandsetmode
try:
install_lib.run(self)
More information about the Mercurial-devel
mailing list