diff Objects/unicodeobject.c @ 41598:ca448c607b14

Make all of test_bytes pass (except pickling, which is too badly busted).
author Guido van Rossum <guido@python.org>
date Fri, 04 May 2007 05:00:04 +0000
parents cfb3e0021b3b
children 1162502a09da
line wrap: on
line diff
--- a/Objects/unicodeobject.c	Fri May 04 04:27:16 2007 +0000
+++ b/Objects/unicodeobject.c	Fri May 04 05:00:04 2007 +0000
@@ -5634,6 +5634,12 @@
     if (v == NULL)
         goto onError;
     if (!PyBytes_Check(v)) {
+        if (PyString_Check(v)) {
+            /* Old codec, turn it into bytes */
+            PyObject *b = PyBytes_FromObject(v);
+            Py_DECREF(v);
+            return b;
+        }
         PyErr_Format(PyExc_TypeError,
                      "encoder did not return a bytes object "
                      "(type=%.400s)",