aboutsummaryrefslogtreecommitdiffstats
path: root/setuptools/command/easy_install.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2015-01-04 22:44:28 -0500
committerJason R. Coombs <jaraco@jaraco.com>2015-01-04 22:44:28 -0500
commit3b68368e30aa51d4a7f96053501c604a8cb6fe42 (patch)
treeff5caaac51c0c401bb7490899ad07068fec1730d /setuptools/command/easy_install.py
parent0ad48553589fc68faeb7a5fc2f76da128249ac86 (diff)
downloadexternal_python_setuptools-3b68368e30aa51d4a7f96053501c604a8cb6fe42.tar.gz
external_python_setuptools-3b68368e30aa51d4a7f96053501c604a8cb6fe42.tar.bz2
external_python_setuptools-3b68368e30aa51d4a7f96053501c604a8cb6fe42.zip
Change the way string values are interpreted from build.executable - now they must be quoted or otherwise escaped suitable for parsing by shlex.split.
Diffstat (limited to 'setuptools/command/easy_install.py')
-rwxr-xr-xsetuptools/command/easy_install.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py
index 54a3bc3a..340b1fac 100755
--- a/setuptools/command/easy_install.py
+++ b/setuptools/command/easy_install.py
@@ -1882,15 +1882,16 @@ class CommandSpec(list):
@classmethod
def from_environment(cls):
- return cls.from_string(cls._sys_executable())
+ return cls.from_string('"' + cls._sys_executable() + '"')
@classmethod
def from_string(cls, string):
"""
- Construct a command spec from a simple string, assumed to represent
- the full name to an executable.
+ Construct a command spec from a simple string representing a command
+ line parseable by shlex.split.
"""
- return JythonCommandSpec.from_string(string) or cls([string])
+ items = shlex.split(string)
+ return JythonCommandSpec.from_string(string) or cls(items)
def install_options(self, script_text):
self.options = shlex.split(self._extract_options(script_text))