Index: Python/getargs.c =================================================================== --- Python/getargs.c (révision 70384) +++ Python/getargs.c (copie de travail) @@ -776,20 +776,14 @@ char *p = va_arg(*p_va, char *); if (PyBytes_Check(arg) && PyBytes_Size(arg) == 1) *p = PyBytes_AS_STRING(arg)[0]; - else if (PyUnicode_Check(arg) && - PyUnicode_GET_SIZE(arg) == 1 && - PyUnicode_AS_UNICODE(arg)[0] < 256) - *p = (char)PyUnicode_AS_UNICODE(arg)[0]; else - return converterr("char < 256", arg, msgbuf, bufsize); + return converterr("a string of 1 byte", arg, msgbuf, bufsize); break; } case 'C': {/* unicode char */ int *p = va_arg(*p_va, int *); - if (PyBytes_Check(arg) && PyBytes_Size(arg) == 1) - *p = PyBytes_AS_STRING(arg)[0]; - else if (PyUnicode_Check(arg) && + if (PyUnicode_Check(arg) && PyUnicode_GET_SIZE(arg) == 1) *p = PyUnicode_AS_UNICODE(arg)[0]; else Index: Lib/test/buffer_tests.py =================================================================== --- Lib/test/buffer_tests.py (révision 70384) +++ Lib/test/buffer_tests.py (copie de travail) @@ -112,7 +112,7 @@ self.assertEqual(b'abc ', self.marshal(b'abc').ljust(6)) self.assertEqual(b'abc', self.marshal(b'abc').ljust(3)) self.assertEqual(b'abc', self.marshal(b'abc').ljust(2)) - self.assertEqual(b'abc*******', self.marshal(b'abc').ljust(10, '*')) + self.assertEqual(b'abc*******', self.marshal(b'abc').ljust(10, b'*')) self.assertRaises(TypeError, self.marshal(b'abc').ljust) def test_rjust(self): @@ -120,7 +120,7 @@ self.assertEqual(b' abc', self.marshal(b'abc').rjust(6)) self.assertEqual(b'abc', self.marshal(b'abc').rjust(3)) self.assertEqual(b'abc', self.marshal(b'abc').rjust(2)) - self.assertEqual(b'*******abc', self.marshal(b'abc').rjust(10, '*')) + self.assertEqual(b'*******abc', self.marshal(b'abc').rjust(10, b'*')) self.assertRaises(TypeError, self.marshal(b'abc').rjust) def test_center(self): @@ -128,7 +128,7 @@ self.assertEqual(b' abc ', self.marshal(b'abc').center(6)) self.assertEqual(b'abc', self.marshal(b'abc').center(3)) self.assertEqual(b'abc', self.marshal(b'abc').center(2)) - self.assertEqual(b'***abc****', self.marshal(b'abc').center(10, '*')) + self.assertEqual(b'***abc****', self.marshal(b'abc').center(10, b'*')) self.assertRaises(TypeError, self.marshal(b'abc').center) def test_swapcase(self):