Commit 0bcd613e authored by Neal Norwitz's avatar Neal Norwitz

Fix bytes so it works on 64-bit platforms.

(Also remove some #if 0 code that is already handled in _getbytevalue.)
parent 9a960c60
...@@ -549,7 +549,7 @@ bytes_setslice(PyBytesObject *self, Py_ssize_t lo, Py_ssize_t hi, ...@@ -549,7 +549,7 @@ bytes_setslice(PyBytesObject *self, Py_ssize_t lo, Py_ssize_t hi,
static int static int
bytes_setitem(PyBytesObject *self, Py_ssize_t i, PyObject *value) bytes_setitem(PyBytesObject *self, Py_ssize_t i, PyObject *value)
{ {
Py_ssize_t ival; int ival;
if (i < 0) if (i < 0)
i += Py_SIZE(self); i += Py_SIZE(self);
...@@ -564,16 +564,6 @@ bytes_setitem(PyBytesObject *self, Py_ssize_t i, PyObject *value) ...@@ -564,16 +564,6 @@ bytes_setitem(PyBytesObject *self, Py_ssize_t i, PyObject *value)
if (!_getbytevalue(value, &ival)) if (!_getbytevalue(value, &ival))
return -1; return -1;
#if 0
ival = PyNumber_AsSsize_t(value, PyExc_ValueError);
if (ival == -1 && PyErr_Occurred())
return -1;
if (ival < 0 || ival >= 256) {
PyErr_SetString(PyExc_ValueError, "byte must be in range(0, 256)");
return -1;
}
#endif
self->ob_bytes[i] = ival; self->ob_bytes[i] = ival;
return 0; return 0;
...@@ -609,12 +599,13 @@ bytes_ass_subscript(PyBytesObject *self, PyObject *item, PyObject *values) ...@@ -609,12 +599,13 @@ bytes_ass_subscript(PyBytesObject *self, PyObject *item, PyObject *values)
else { else {
Py_ssize_t ival = PyNumber_AsSsize_t(values, PyExc_ValueError); Py_ssize_t ival = PyNumber_AsSsize_t(values, PyExc_ValueError);
if (ival == -1 && PyErr_Occurred()) { if (ival == -1 && PyErr_Occurred()) {
int int_value;
/* Also accept str of size 1 in 2.x */ /* Also accept str of size 1 in 2.x */
PyErr_Clear(); PyErr_Clear();
if (!_getbytevalue(values, &ival)) if (!_getbytevalue(values, &int_value))
return -1; return -1;
} ival = (int) int_value;
if (ival < 0 || ival >= 256) { } else if (ival < 0 || ival >= 256) {
PyErr_SetString(PyExc_ValueError, PyErr_SetString(PyExc_ValueError,
"byte must be in range(0, 256)"); "byte must be in range(0, 256)");
return -1; return -1;
......
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