From 8ca7a0d9666ede2d9d270e2a469e4b8dda492e69 Mon Sep 17 00:00:00 2001 From: Simeon Simeonov Date: Fri, 7 Oct 2022 05:29:18 +0200 Subject: Replace os.system with subprocess --- src/etoolkit/__main__.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/etoolkit/__main__.py b/src/etoolkit/__main__.py index 299d75c..a200453 100644 --- a/src/etoolkit/__main__.py +++ b/src/etoolkit/__main__.py @@ -28,6 +28,7 @@ import io import json import logging import os +import subprocess import sys import etoolkit @@ -324,9 +325,9 @@ def main(inargs=None): os.environ.update(env) if args.spawn: - os.system(args.spawn) + subprocess.run(args.spawn.split(), check=True) else: - os.system(os.getenv('SHELL', 'bash')) + subprocess.run(os.environ.get('SHELL', 'bash').split(), check=True) except KeyboardInterrupt: logger.debug('KeyboardInterrupt') print(os.linesep) @@ -334,6 +335,9 @@ def main(inargs=None): except etoolkit.EtoolkitInstanceError as e: logger.error('EtoolkitInstanceError: %s', e) sys.exit(1) + except subprocess.CalledProcessError as e: + logger.error('Unable to spawn shell process: %s', e) + sys.exit(1) except Exception as e: logger.error('Unexpected exception: %s', e) sys.exit(1) -- cgit v1.3