Commits

Georg Brandl committed 7e030b6

Use _getbytevalue() in init too.

Comments (0)

Files changed (1)

Objects/bytearrayobject.c

     /* Run the iterator to exhaustion */
     for (;;) {
         PyObject *item;
-        Py_ssize_t value;
+        int rc, value;
 
         /* Get the next item */
         item = iternext(it);
         }
 
         /* Interpret it as an int (__index__) */
-        value = PyNumber_AsSsize_t(item, PyExc_ValueError);
+        rc = _getbytevalue(item, &value);
         Py_DECREF(item);
-        if (value == -1 && PyErr_Occurred())
+        if (!rc)
             goto error;
 
-        /* Range check */
-        if (value < 0 || value >= 256) {
-            PyErr_SetString(PyExc_ValueError,
-                            "bytes must be in range(0, 256)");
-            goto error;
-        }
-
         /* Append the byte */
         if (Py_SIZE(self) < self->ob_alloc)
             Py_SIZE(self)++;