summaryrefslogtreecommitdiff
path: root/Tools/scripts/h2py.py
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/scripts/h2py.py')
-rwxr-xr-xTools/scripts/h2py.py39
1 files changed, 19 insertions, 20 deletions
diff --git a/Tools/scripts/h2py.py b/Tools/scripts/h2py.py
index 4363c0cf73..ea37c04d4c 100755
--- a/Tools/scripts/h2py.py
+++ b/Tools/scripts/h2py.py
@@ -69,23 +69,21 @@ def main():
sys.stdout.write('# Generated by h2py from stdin\n')
process(sys.stdin, sys.stdout)
else:
- fp = open(filename, 'r')
- outfile = os.path.basename(filename)
- i = outfile.rfind('.')
- if i > 0: outfile = outfile[:i]
- modname = outfile.upper()
- outfile = modname + '.py'
- outfp = open(outfile, 'w')
- outfp.write('# Generated by h2py from %s\n' % filename)
- filedict = {}
- for dir in searchdirs:
- if filename[:len(dir)] == dir:
- filedict[filename[len(dir)+1:]] = None # no '/' trailing
- importable[filename[len(dir)+1:]] = modname
- break
- process(fp, outfp)
- outfp.close()
- fp.close()
+ with open(filename) as fp:
+ outfile = os.path.basename(filename)
+ i = outfile.rfind('.')
+ if i > 0: outfile = outfile[:i]
+ modname = outfile.upper()
+ outfile = modname + '.py'
+ with open(outfile, 'w') as outfp:
+ outfp.write('# Generated by h2py from %s\n' % filename)
+ filedict = {}
+ for dir in searchdirs:
+ if filename[:len(dir)] == dir:
+ filedict[filename[len(dir)+1:]] = None # no '/' trailing
+ importable[filename[len(dir)+1:]] = modname
+ break
+ process(fp, outfp)
def pytify(body):
# replace ignored patterns by spaces
@@ -161,9 +159,10 @@ def process(fp, outfp, env = {}):
except IOError:
pass
if inclfp:
- outfp.write(
- '\n# Included from %s\n' % filename)
- process(inclfp, outfp, env)
+ with inclfp:
+ outfp.write(
+ '\n# Included from %s\n' % filename)
+ process(inclfp, outfp, env)
else:
sys.stderr.write('Warning - could not find file %s\n' %
filename)