diff options
author | Guido van Rossum <guido@python.org> | 2007-04-27 23:53:51 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2007-04-27 23:53:51 (GMT) |
commit | 572dbf8f1320c0b34b9c786e5c30ba4a4b61b292 (patch) | |
tree | 27763a28b40b577302161008a00539649e2a536d /Python/getargs.c | |
parent | d4617f24caa1827106f5ca5e74655adf919ea499 (diff) | |
download | cpython-572dbf8f1320c0b34b9c786e5c30ba4a4b61b292.zip cpython-572dbf8f1320c0b34b9c786e5c30ba4a4b61b292.tar.gz cpython-572dbf8f1320c0b34b9c786e5c30ba4a4b61b292.tar.bz2 |
Checkpoint. Manipulated things so that string literals are always
unicode, and a few other compensating changes, e.g. str <- unicode,
chr <- unichr, and repr() of a unicode string no longer starts
with 'u'. Lots of unit tests are broken, but some basic things
work, in particular distutils works so the extensions can be built,
and test_builtin.py works.
Diffstat (limited to 'Python/getargs.c')
-rw-r--r-- | Python/getargs.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Python/getargs.c b/Python/getargs.c index 91d9b47..3b58c98 100644 --- a/Python/getargs.c +++ b/Python/getargs.c @@ -1081,7 +1081,7 @@ convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags, case 'S': { /* string object */ PyObject **p = va_arg(*p_va, PyObject **); - if (PyString_Check(arg)) + if (PyString_Check(arg) || PyUnicode_Check(arg)) *p = arg; else return converterr("string", arg, msgbuf, bufsize); @@ -1531,7 +1531,7 @@ vgetargskeywords(PyObject *args, PyObject *keywords, const char *format, while (PyDict_Next(keywords, &pos, &key, &value)) { int match = 0; char *ks; - if (!PyString_Check(key)) { + if (!PyString_Check(key) && !PyUnicode_Check(key)) { PyErr_SetString(PyExc_TypeError, "keywords must be strings"); return cleanreturn(0, freelist); |