Merged revisions 86159 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r86159 | hirokazu.yamamoto | 2010-11-04 21:09:08 +0900 | 2 lines Issue #5391: mmap.read_byte() should return unsigned value [0, 255] instead of signed value [-127, 128]. ........
This commit is contained in:
parent
fc5f381caa
commit
09ea792a94
|
@ -536,6 +536,15 @@ class MmapTests(unittest.TestCase):
|
|||
m.seek(8)
|
||||
self.assertRaises(ValueError, m.write, b"bar")
|
||||
|
||||
def test_non_ascii_byte(self):
|
||||
for b in (129, 200, 255): # > 128
|
||||
m = mmap.mmap(-1, 1)
|
||||
m.write_byte(b)
|
||||
self.assertEquals(m[0], b)
|
||||
m.seek(0)
|
||||
self.assertEquals(m.read_byte(), b)
|
||||
m.close()
|
||||
|
||||
if os.name == 'nt':
|
||||
def test_tagname(self):
|
||||
data1 = b"0123456789"
|
||||
|
|
|
@ -205,7 +205,7 @@ mmap_read_byte_method(mmap_object *self,
|
|||
if (self->pos < self->size) {
|
||||
char value = self->data[self->pos];
|
||||
self->pos += 1;
|
||||
return Py_BuildValue("b", value);
|
||||
return Py_BuildValue("B", (unsigned char)value);
|
||||
} else {
|
||||
PyErr_SetString(PyExc_ValueError, "read byte out of range");
|
||||
return NULL;
|
||||
|
|
Loading…
Reference in New Issue