coding style: Can use the Popen context manager to close and wait

This commit is contained in:
Andrew Hamilton 2025-06-10 18:52:54 +10:00
parent ce224275e9
commit ff1f2c8760

View file

@ -1112,14 +1112,11 @@ def manage_cache(root_path):
@contextlib.contextmanager @contextlib.contextmanager
def print_to_pager(pager_command=["less", "-RFEX"]): def print_to_pager(pager_command=["less", "-RFEX"]):
try: try:
pager_process = subprocess.Popen(pager_command, stdin=subprocess.PIPE, text=True) with subprocess.Popen(pager_command, stdin=subprocess.PIPE, text=True) as pager_process:
with contextlib.redirect_stdout(pager_process.stdin):
yield
except FileNotFoundError: except FileNotFoundError:
yield yield
else:
with contextlib.redirect_stdout(pager_process.stdin):
yield
pager_process.stdin.close()
pager_process.wait()
def print_tool_info(): def print_tool_info():