Mercurial > cpython-lru_cache-weakref
diff Lib/http/server.py @ 57185:12e0c9ea304e
Merged revisions 76208 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r76208 | senthil.kumaran | 2009-11-11 07:04:44 +0530 (Wed, 11 Nov 2009) | 3 lines
CGIHTTPRequestHandler.run_cgi() to use subprocess for Non Unix platforms. Fix
based on Issue1235.
........
| author | Senthil Kumaran <orsenthil@gmail.com> |
|---|---|
| date | Wed, 11 Nov 2009 04:17:53 +0000 |
| parents | 366c8a4e5a46 |
| children | f8ddfced2a34 |
line wrap: on
line diff
--- a/Lib/http/server.py Tue Nov 10 23:18:31 2009 +0000 +++ b/Lib/http/server.py Wed Nov 11 04:17:53 2009 +0000 @@ -1071,16 +1071,16 @@ else: # Non-Unix -- use subprocess import subprocess - cmdline = scriptfile + cmdline = [scriptfile] if self.is_python(scriptfile): interp = sys.executable if interp.lower().endswith("w.exe"): # On Windows, use python.exe, not pythonw.exe interp = interp[:-5] + interp[-4:] - cmdline = "%s -u %s" % (interp, cmdline) - if '=' not in query and '"' not in query: - cmdline = '%s "%s"' % (cmdline, query) - self.log_message("command: %s", cmdline) + cmdline = [interp, '-u'] + cmdline + if '=' not in query: + cmdline.append(query) + self.log_message("command: %s", subprocess.list2cmdline(cmdline)) try: nbytes = int(length) except (TypeError, ValueError): @@ -1088,7 +1088,7 @@ p = subprocess.Popen(cmdline, stdin=subprocess.PIPE, stdout=subprocess.PIPE, - stderr=subprocess.PIPE, + stderr=subprocess.PIPE ) if self.command.lower() == "post" and nbytes > 0: data = self.rfile.read(nbytes)
