Mercurial > cpython-lru_cache-weakref
diff Python/bltinmodule.c @ 40411:b3ed053cc6a1
Check "sep" and "end" for stringness in Print().
| author | Georg Brandl <georg@python.org> |
|---|---|
| date | Thu, 30 Nov 2006 22:46:03 +0000 |
| parents | 2e5011acb414 |
| children | cc992d75d5b3 |
line wrap: on
line diff
--- a/Python/bltinmodule.c Thu Nov 30 22:13:52 2006 +0000 +++ b/Python/bltinmodule.c Thu Nov 30 22:46:03 2006 +0000 @@ -1429,7 +1429,20 @@ if (file == NULL || file == Py_None) file = PySys_GetObject("stdout"); - /* XXX Verify that sep and end are None, NULL or strings. */ + if (sep && sep != Py_None && !PyString_Check(sep) && + !PyUnicode_Check(sep)) { + PyErr_Format(PyExc_TypeError, + "sep must be None, str or unicode, not %.200s", + sep->ob_type->tp_name); + return NULL; + } + if (end && end != Py_None && !PyString_Check(end) && + !PyUnicode_Check(end)) { + PyErr_Format(PyExc_TypeError, + "end must be None, str or unicode, not %.200s", + end->ob_type->tp_name); + return NULL; + } for (i = 0; i < PyTuple_Size(args); i++) { if (i > 0) {
