[5/7] utils: add umask changing context manager
Submitted by Ross Burton on Sept. 28, 2020, 4:18 p.m.
|
Patch ID: 176863
Details
Commit Message
@@ -944,6 +944,17 @@ def which(path, item, direction = 0, history = False, executable=False):
return "", hist
return ""
+@contextmanager
+def umask(new_mask):
+ """
+ Context manager to set the umask to a specific mask, and restore it afterwards.
+ """
+ current_mask = os.umask(new_mask)
+ try:
+ yield
+ finally:
+ os.umask(current_mask)
+
def to_boolean(string, default=None):
if not string:
return default
Add a umask context manager which can be used to temporarily change the umask in a 'with' block. Signed-off-by: Ross Burton <ross.burton@arm.com> --- bitbake/lib/bb/utils.py | 11 +++++++++++ 1 file changed, 11 insertions(+)