This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: popen4 fails if cmd is unicode.
Type: Stage:
Components: Library (Lib) Versions:
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: mwh Nosy List: gvanrossum, mwh
Priority: normal Keywords:

Created on 2001-11-13 08:17 by anonymous, last changed 2022-04-10 16:04 by admin. This issue is now closed.

Messages (3)
msg7517 - (view) Author: Nobody/Anonymous (nobody) Date: 2001-11-13 08:17
In popen2.py there is a class Popen3. It contains
a method _run_child().

-------
def _run_child(self, cmd):
    if type(cmd) == type(''):
        cmd = ['/bin/sh', '-c', cmd]
-------

I think that this test is attempting to find if the
"cmd" is not a list. Unfortunately <type 'unicode'>
does not get turned into a list. A better test may
be:

-----
def _run_child(self, cmd):
    if repr(type(cmd)) != "<type 'list'>"
        cmd = ['/bin/sh', '-c', cmd] 
-----

This problem shows up when creating commands from XML
files read by "xml.sax". Beta 2.2b1 still has this
code. 
msg7518 - (view) Author: Michael Hudson (mwh) (Python committer) Date: 2001-12-11 13:44
Logged In: YES 
user_id=6656

This would seem to have been fixed in revision 1.20 in CVS;
the check-in comment was:

Patch #487784: Support Unicode commands in popen3/4 handling
on UNIX.

Bugs that are already fixed are the easiest to close...
msg7519 - (view) Author: Guido van Rossum (gvanrossum) * (Python committer) Date: 2001-12-11 14:16
Logged In: YES 
user_id=6380

Ain't a time machine handy? :-)
History
Date User Action Args
2022-04-10 16:04:38adminsetgithub: 35516
2001-11-13 08:17:15anonymouscreate