From: Vinay Sajip Date: Fri, 12 Jul 2013 20:13:01 +0000 (+0100) Subject: Closes #18435: Merged fix from 3.3. X-Git-Tag: v3.4.0a1~229 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ad644e011f1ac9066ff03cc9d8407cb7301f31ca;p=python Closes #18435: Merged fix from 3.3. --- ad644e011f1ac9066ff03cc9d8407cb7301f31ca diff --cc Lib/venv/__init__.py index ecdb68e880,272a887216..4adde5f58e --- a/Lib/venv/__init__.py +++ b/Lib/venv/__init__.py @@@ -111,12 -98,12 +106,12 @@@ class EnvBuilder def create_if_needed(d): if not os.path.exists(d): os.makedirs(d) + elif os.path.islink(d) or os.path.isfile(d): + raise ValueError('Unable to create directory %r' % d) - if os.path.exists(env_dir) and not (self.clear or self.upgrade): - raise ValueError('Directory exists: %s' % env_dir) if os.path.exists(env_dir) and self.clear: - shutil.rmtree(env_dir) + self.clear_directory(env_dir) - context = Context() + context = types.SimpleNamespace() context.env_dir = env_dir context.env_name = os.path.split(env_dir)[1] context.prompt = '(%s) ' % context.env_name