From d8ae230e97292803e4b7a5e3d9a7deb09a64659b Mon Sep 17 00:00:00 2001 From: Fu Hanxi Date: Tue, 5 Aug 2025 15:34:15 +0200 Subject: [PATCH] fix: stop exit 0 when being called programmatically --- espefuse/__init__.py | 6 +++++- espsecure/__init__.py | 6 +++++- esptool/__init__.py | 6 +++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/espefuse/__init__.py b/espefuse/__init__.py index 31e8998a2..23960787a 100755 --- a/espefuse/__init__.py +++ b/espefuse/__init__.py @@ -214,7 +214,11 @@ def main(argv: list[str] | None = None, esp: esptool.ESPLoader | None = None): returned by esptool.get_default_connected_device() """ args = esptool.expand_file_arguments(argv or sys.argv[1:]) - cli(args=args, esp=esp) + try: + cli(args=args, esp=esp) + except SystemExit as e: + if e.code != 0: + raise def _main(): diff --git a/espsecure/__init__.py b/espsecure/__init__.py index 8d0c7963b..5494b5cce 100755 --- a/espsecure/__init__.py +++ b/espsecure/__init__.py @@ -1957,7 +1957,11 @@ def main(argv: list[str] | None = None): Arguments and their values need to be added as individual items to the list e.g. "--port /dev/ttyUSB1" thus becomes ['--port', '/dev/ttyUSB1']. """ - cli(args=argv) + try: + cli(args=argv) + except SystemExit as e: + if e.code != 0: + raise def _main(): diff --git a/esptool/__init__.py b/esptool/__init__.py index b51a03bd8..3d66a548b 100644 --- a/esptool/__init__.py +++ b/esptool/__init__.py @@ -1028,7 +1028,11 @@ def main(argv: list[str] | None = None, esp: ESPLoader | None = None): returned by get_default_connected_device() """ args = expand_file_arguments(argv or sys.argv[1:]) - cli(args=args, esp=esp) + try: + cli(args=args, esp=esp) + except SystemExit as e: + if e.code != 0: + raise def get_port_list(