summaryrefslogtreecommitdiff
path: root/Tools/scripts/mkreal.py
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2019-03-30 08:33:02 +0200
committerGitHub <noreply@github.com>2019-03-30 08:33:02 +0200
commit172bb39452ae8b3ccdf5d1f23ead46f44200cd49 (patch)
tree5e1effbca3664b839a81eb7a7d62fa4974cfbfb1 /Tools/scripts/mkreal.py
parentafbb7a371fb44edc731344eab5b474ad8f7b57d7 (diff)
downloadcpython-git-172bb39452ae8b3ccdf5d1f23ead46f44200cd49.tar.gz
bpo-22831: Use "with" to avoid possible fd leaks in tools (part 2). (GH-10927)
Diffstat (limited to 'Tools/scripts/mkreal.py')
-rwxr-xr-xTools/scripts/mkreal.py15
1 files changed, 7 insertions, 8 deletions
diff --git a/Tools/scripts/mkreal.py b/Tools/scripts/mkreal.py
index b21909e691..f169da43fe 100755
--- a/Tools/scripts/mkreal.py
+++ b/Tools/scripts/mkreal.py
@@ -18,14 +18,13 @@ def mkrealfile(name):
st = os.stat(name) # Get the mode
mode = S_IMODE(st[ST_MODE])
linkto = os.readlink(name) # Make sure again it's a symlink
- f_in = open(name, 'r') # This ensures it's a file
- os.unlink(name)
- f_out = open(name, 'w')
- while 1:
- buf = f_in.read(BUFSIZE)
- if not buf: break
- f_out.write(buf)
- del f_out # Flush data to disk before changing mode
+ with open(name, 'rb') as f_in: # This ensures it's a file
+ os.unlink(name)
+ with open(name, 'wb') as f_out:
+ while 1:
+ buf = f_in.read(BUFSIZE)
+ if not buf: break
+ f_out.write(buf)
os.chmod(name, mode)
def mkrealdir(name):