Make sys.path and sys.argv into lists of strings.

Remove the hack in test_popen.py to overcome this issue.
This commit is contained in:
Guido van Rossum 2007-06-15 03:49:03 +00:00
parent aa588c4699
commit 96ca6916b4
2 changed files with 7 additions and 7 deletions

View File

@ -20,7 +20,7 @@ if ' ' in python:
class PopenTest(unittest.TestCase):
def _do_test_commandline(self, cmdline, expected):
cmd = '%s -c "import sys; print(list(map(str, sys.argv)))" %s'
cmd = '%s -c "import sys; print(sys.argv)" %s'
cmd = cmd % (python, cmdline)
data = os.popen(cmd).read()
got = eval(data)[1:] # strip off argv[0]

View File

@ -1145,7 +1145,7 @@ makepathobject(char *path, int delim)
p = strchr(path, delim);
if (p == NULL)
p = strchr(path, '\0'); /* End of string */
w = PyString_FromStringAndSize(path, (Py_ssize_t) (p - path));
w = PyUnicode_FromStringAndSize(path, (Py_ssize_t) (p - path));
if (w == NULL) {
Py_DECREF(v);
return NULL;
@ -1190,14 +1190,14 @@ makeargvobject(int argc, char **argv)
if (i == 0) {
char* fn = decc$translate_vms(argv[0]);
if ((fn == (char *)0) || fn == (char *)-1)
v = PyString_FromString(argv[0]);
v = PyUnicode_FromString(argv[0]);
else
v = PyString_FromString(
v = PyUnicode_FromString(
decc$translate_vms(argv[0]));
} else
v = PyString_FromString(argv[i]);
v = PyUnicode_FromString(argv[i]);
#else
PyObject *v = PyString_FromString(argv[i]);
PyObject *v = PyUnicode_FromString(argv[i]);
#endif
if (v == NULL) {
Py_DECREF(av);
@ -1301,7 +1301,7 @@ PySys_SetArgv(int argc, char **argv)
#endif /* Unix */
}
#endif /* All others */
a = PyString_FromStringAndSize(argv0, n);
a = PyUnicode_FromStringAndSize(argv0, n);
if (a == NULL)
Py_FatalError("no mem for sys.path insertion");
if (PyList_Insert(path, 0, a) < 0)