From 9b243169151ed18a06c3c02bebc508207d4b0456 Mon Sep 17 00:00:00 2001 From: SomberNight Date: Thu, 22 May 2025 21:48:27 +0000 Subject: [PATCH] plugin: _execute_commands_in_subprocess: make sure pipes get closed --- electrum/plugin.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/electrum/plugin.py b/electrum/plugin.py index ddc4b8383..a35318c5c 100644 --- a/electrum/plugin.py +++ b/electrum/plugin.py @@ -338,15 +338,15 @@ class Plugins(DaemonThread): Executes the given commands in a subprocess and asserts that it was successful. """ import subprocess - process = subprocess.Popen( + with subprocess.Popen( commands, stdout=subprocess.PIPE, stderr=subprocess.PIPE, - text=True - ) - stdout, stderr = process.communicate() - if process.returncode != 0: - raise Exception(f'error executing command ({process.returncode}): {stderr}') + text=True, + ) as process: + stdout, stderr = process.communicate() + if process.returncode != 0: + raise Exception(f'error executing command ({process.returncode}): {stderr}') def _write_key_to_root_file_linux(self, key_hex: str) -> None: """