From 4c71695e41a50dda3199d26ed7aedbaaf3150768 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Wed, 24 Aug 2016 19:29:11 -0400 Subject: Use context manager for file I/O. There are a few cases where a context manager cannot be used, such as the logger. --- mesonbuild/interpreter.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'mesonbuild/interpreter.py') diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index c9a81fb..6570f2b 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -1032,7 +1032,8 @@ class Interpreter(): mesonfile = os.path.join(self.source_root, self.subdir, environment.build_filename) if not os.path.isfile(mesonfile): raise InvalidArguments('Missing Meson file in %s' % mesonfile) - code = open(mesonfile, encoding='utf8').read() + with open(mesonfile, encoding='utf8') as mf: + code = mf.read() if len(code.strip()) == 0: raise InvalidCode('Builder file is empty.') assert(isinstance(code, str)) @@ -1994,7 +1995,8 @@ class Interpreter(): if not os.path.isfile(absname): self.subdir = prev_subdir raise InterpreterException('Nonexistant build def file %s.' % buildfilename) - code = open(absname, encoding='utf8').read() + with open(absname, encoding='utf8') as f: + code = f.read() assert(isinstance(code, str)) try: codeblock = mparser.Parser(code).parse() -- cgit v1.1