summaryrefslogtreecommitdiffstats
path: root/Lib/venv
diff options
context:
space:
mode:
authorDustin Rodrigues <dust.rod@gmail.com>2022-04-13 08:07:10 (GMT)
committerGitHub <noreply@github.com>2022-04-13 08:07:10 (GMT)
commit54f67ad54366f1b9161edca283e19670e065e1b8 (patch)
treefee5547567a1f702cd3b6187883e27163b7df22d /Lib/venv
parent15537c51c188a6633248c25d211d5216e673aee3 (diff)
downloadcpython-54f67ad54366f1b9161edca283e19670e065e1b8.zip
cpython-54f67ad54366f1b9161edca283e19670e065e1b8.tar.gz
cpython-54f67ad54366f1b9161edca283e19670e065e1b8.tar.bz2
bpo-43218: Prevent venv creation when the target directory contains a PATH separator. (GH-24530)
Diffstat (limited to 'Lib/venv')
-rw-r--r--Lib/venv/__init__.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/Lib/venv/__init__.py b/Lib/venv/__init__.py
index a8640d9..7bfbadd 100644
--- a/Lib/venv/__init__.py
+++ b/Lib/venv/__init__.py
@@ -116,6 +116,9 @@ class EnvBuilder:
elif os.path.islink(d) or os.path.isfile(d):
raise ValueError('Unable to create directory %r' % d)
+ if os.pathsep in env_dir:
+ raise ValueError(f'Refusing to create a venv in {env_dir} because '
+ f'it contains the PATH separator {os.pathsep}.')
if os.path.exists(env_dir) and self.clear:
self.clear_directory(env_dir)
context = types.SimpleNamespace()