]> granicus.if.org Git - python/commitdiff
Disallow u"..." + b"..." and b"..." + u"...".
authorGuido van Rossum <guido@python.org>
Fri, 13 Apr 2007 02:23:57 +0000 (02:23 +0000)
committerGuido van Rossum <guido@python.org>
Fri, 13 Apr 2007 02:23:57 +0000 (02:23 +0000)
Lib/test/test_bytes.py
Objects/unicodeobject.c

index 1d826b638024f7e5d429f2db230028810319a6e9..999346f3b1237195b7283ad60799601f88fadc8c 100644 (file)
@@ -374,7 +374,7 @@ class BytesTest(unittest.TestCase):
         self.assertEqual(b1 + "def", bytes("abcdef"))
         self.assertEqual("def" + b1, bytes("defabc"))
         self.assertRaises(TypeError, lambda: b1 + u"def")
-        ##self.assertRaises(TypeError, lambda: u"abc" + b2)  # XXX FIXME
+        self.assertRaises(TypeError, lambda: u"abc" + b2)
 
     def test_repeat(self):
         b = bytes("abc")
index 4fe4d100316e91b9c3d4b25c8098386825c4584f..ce28692d7b37fc3748b87f2c9541a6ecf1e8b6e4 100644 (file)
@@ -5535,6 +5535,9 @@ PyObject *PyUnicode_Concat(PyObject *left,
 {
     PyUnicodeObject *u = NULL, *v = NULL, *w;
 
+    if (PyBytes_Check(left) || PyBytes_Check(right))
+        return PyBytes_Concat(left, right);
+
     /* Coerce the two arguments */
     u = (PyUnicodeObject *)PyUnicode_FromObject(left);
     if (u == NULL)