summaryrefslogtreecommitdiffstats
path: root/Lib/distutils/ccompiler.py
diff options
context:
space:
mode:
authorÉric Araujo <merwok@netwok.org>2010-11-06 02:58:56 (GMT)
committerÉric Araujo <merwok@netwok.org>2010-11-06 02:58:56 (GMT)
commitc6d7ead095fdd3b1ee82a338d4ffd88b2c2c2fce (patch)
tree87bd3d5006d1f4050f64a44c59910461747f08dc /Lib/distutils/ccompiler.py
parent997980fe13ae7952665da56b122aeff9ea8fa6df (diff)
downloadcpython-c6d7ead095fdd3b1ee82a338d4ffd88b2c2c2fce.zip
cpython-c6d7ead095fdd3b1ee82a338d4ffd88b2c2c2fce.tar.gz
cpython-c6d7ead095fdd3b1ee82a338d4ffd88b2c2c2fce.tar.bz2
Merged revisions 86223-86224,86226,86234 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r86223 | eric.araujo | 2010-11-06 00:51:56 +0100 (sam., 06 nov. 2010) | 2 lines Always close files in distutils code and tests (#10252). ........ r86224 | eric.araujo | 2010-11-06 00:58:34 +0100 (sam., 06 nov. 2010) | 2 lines Add missing entry for r86223. ........ r86226 | eric.araujo | 2010-11-06 00:59:32 +0100 (sam., 06 nov. 2010) | 2 lines Of course, I forgot one file in r86223. ........ r86234 | eric.araujo | 2010-11-06 03:10:32 +0100 (sam., 06 nov. 2010) | 2 lines Also close file descriptors from os.popen and subprocess.Popen ........
Diffstat (limited to 'Lib/distutils/ccompiler.py')
-rw-r--r--Lib/distutils/ccompiler.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/Lib/distutils/ccompiler.py b/Lib/distutils/ccompiler.py
index 34c77a3..291c008 100644
--- a/Lib/distutils/ccompiler.py
+++ b/Lib/distutils/ccompiler.py
@@ -779,14 +779,16 @@ class CCompiler:
library_dirs = []
fd, fname = tempfile.mkstemp(".c", funcname, text=True)
f = os.fdopen(fd, "w")
- for incl in includes:
- f.write("""#include "%s"\n""" % incl)
- f.write("""\
+ try:
+ for incl in includes:
+ f.write("""#include "%s"\n""" % incl)
+ f.write("""\
main (int argc, char **argv) {
%s();
}
""" % funcname)
- f.close()
+ finally:
+ f.close()
try:
objects = self.compile([fname], include_dirs=include_dirs)
except CompileError: