Use try..finally blocks to ensure calls within context manager

This commit is contained in:
Eric Torres
2019-04-17 20:22:28 -07:00
parent bbeebecd4f
commit a7d30cf91d
2 changed files with 17 additions and 9 deletions

View File

@@ -108,8 +108,10 @@ def change_umask():
"""Creates a context manager in which the umask is changed. This is to ensure that
the script's desired umask is not visible to the user.
"""
try:
old_umask = os.umask(SCRIPT_UMASK)
yield
finally:
os.umask(old_umask)

View File

@@ -95,8 +95,11 @@ def merge_include_files():
:return: path-like object
"""
try:
# filelist is guaranteed to exist at this point
filelist = merge_files(get_files_by_suffix("-include.conf"))
yield filelist
finally:
filelist.unlink()
@@ -106,8 +109,11 @@ def merge_exclude_files():
:return: path-like object
"""
try:
# filelist is guaranteed to exist at this point
filelist = merge_files(get_files_by_suffix("-exclude.conf"))
yield filelist
finally:
filelist.unlink()