diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2016-09-01 23:12:06 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2016-09-01 23:12:06 +0300 |
commit | cdf0c4f1a945f1262ae604047fd240b25cf44050 (patch) | |
tree | efb861fa017c1f8663b75570fe61fa644c2bd3d0 /mesonbuild/mesonlib.py | |
parent | 389259c229b30d38ec9de503dff965973b24ee26 (diff) | |
parent | 859c5e28df90851838aacc4b9ad49d3630e4992a (diff) | |
download | meson-cdf0c4f1a945f1262ae604047fd240b25cf44050.zip meson-cdf0c4f1a945f1262ae604047fd240b25cf44050.tar.gz meson-cdf0c4f1a945f1262ae604047fd240b25cf44050.tar.bz2 |
Merge branch 'QuLogic-context-managers'
Diffstat (limited to 'mesonbuild/mesonlib.py')
-rw-r--r-- | mesonbuild/mesonlib.py | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/mesonbuild/mesonlib.py b/mesonbuild/mesonlib.py index b5b5339..007aea8 100644 --- a/mesonbuild/mesonlib.py +++ b/mesonbuild/mesonlib.py @@ -96,7 +96,8 @@ def is_32bit(): def is_debianlike(): try: - open('/etc/debian_version', 'r') + with open('/etc/debian_version', 'r'): + pass return True except FileNotFoundError: return False @@ -262,7 +263,8 @@ def do_mesondefine(line, confdata): def do_conf_file(src, dst, confdata): try: - data = open(src).readlines() + with open(src) as f: + data = f.readlines() except Exception: raise MesonException('Could not read input file %s.' % src) # Only allow (a-z, A-Z, 0-9, _, -) as valid characters for a define @@ -276,7 +278,8 @@ def do_conf_file(src, dst, confdata): line = do_replacement(regex, line, confdata) result.append(line) dst_tmp = dst + '~' - open(dst_tmp, 'w').writelines(result) + with open(dst_tmp, 'w') as f: + f.writelines(result) shutil.copymode(src, dst_tmp) replace_if_different(dst, dst_tmp) @@ -306,9 +309,10 @@ def replace_if_different(dst, dst_tmp): # If contents are identical, don't touch the file to prevent # unnecessary rebuilds. try: - if open(dst, 'r').read() == open(dst_tmp, 'r').read(): - os.unlink(dst_tmp) - return + with open(dst, 'r') as f1, open(dst_tmp, 'r') as f2: + if f1.read() == f2.read(): + os.unlink(dst_tmp) + return except FileNotFoundError: pass os.replace(dst_tmp, dst) |