diff options
author | Giampaolo Rodola <g.rodola@gmail.com> | 2022-07-10 17:15:37 +0200 |
---|---|---|
committer | Giampaolo Rodola <g.rodola@gmail.com> | 2022-07-10 17:15:37 +0200 |
commit | c13017f04a721188f4da7822b503d9fad002805d (patch) | |
tree | 55634630085e9da1bfd06e35ffd8a4b24c987748 | |
parent | a3e569a7adadba6988d9b26692baef91e9d7e959 (diff) | |
download | psutil-c13017f04a721188f4da7822b503d9fad002805d.tar.gz |
subprocess; avoid using shell=True during tests
-rw-r--r-- | psutil/tests/__init__.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/psutil/tests/__init__.py b/psutil/tests/__init__.py index 878af411..16477129 100644 --- a/psutil/tests/__init__.py +++ b/psutil/tests/__init__.py @@ -21,6 +21,7 @@ import os import random import re import select +import shlex import shutil import signal import socket @@ -450,14 +451,14 @@ def sh(cmd, **kwds): """run cmd in a subprocess and return its output. raises RuntimeError on error. """ - shell = True if isinstance(cmd, (str, unicode)) else False # Prevents subprocess to open error dialogs in case of error. - flags = 0x8000000 if WINDOWS and shell else 0 - kwds.setdefault("shell", shell) + flags = 0x8000000 if WINDOWS else 0 kwds.setdefault("stdout", subprocess.PIPE) kwds.setdefault("stderr", subprocess.PIPE) kwds.setdefault("universal_newlines", True) kwds.setdefault("creationflags", flags) + if isinstance(cmd, str): + cmd = shlex.split(cmd) p = subprocess.Popen(cmd, **kwds) _subprocesses_started.add(p) if PY3: |