Kaydet (Commit) b61c035d authored tarafından Mark Dickinson's avatar Mark Dickinson

Merged revisions 74673 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r74673 | mark.dickinson | 2009-09-06 11:03:31 +0100 (Sun, 06 Sep 2009) | 3 lines

  Issue #6846: bytearray.pop was returning ints in the range [-128, 128)
  instead of [0, 256).  Thanks Hagen Fürstenau for the report and fix.
........
üst 545e7203
......@@ -691,6 +691,8 @@ class ByteArrayTest(BaseBytesTest):
self.assertEqual(b.pop(-2), ord('r'))
self.assertRaises(IndexError, lambda: b.pop(10))
self.assertRaises(OverflowError, lambda: bytearray().pop())
# test for issue #6846
self.assertEqual(bytearray(b'\xff').pop(), 0xff)
def test_nosort(self):
self.assertRaises(AttributeError, lambda: bytearray().sort())
......
......@@ -12,6 +12,8 @@ What's New in Python 2.6.3
Core and Builtins
-----------------
- Issue #6846: Fix bug where bytearray.pop() returns negative integers.
- Issue #6707: dir() on an uninitialized module caused a crash.
- Issue #6540: Fixed crash for bytearray.translate() with invalid parameters.
......
......@@ -2758,7 +2758,7 @@ bytes_pop(PyByteArrayObject *self, PyObject *args)
if (PyByteArray_Resize((PyObject *)self, n - 1) < 0)
return NULL;
return PyInt_FromLong(value);
return PyInt_FromLong((unsigned char)value);
}
PyDoc_STRVAR(remove__doc__,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment