Fixed the array module broken in issue #23492.
array_array_frombytes() is used in other functions, but it's signature was changed. Closes issue #23866.
This commit is contained in:
parent
b599ca8cff
commit
04e6dba7dc
|
@ -1403,7 +1403,7 @@ static PyObject *
|
||||||
array_array_fromfile_impl(arrayobject *self, PyObject *f, Py_ssize_t n)
|
array_array_fromfile_impl(arrayobject *self, PyObject *f, Py_ssize_t n)
|
||||||
/*[clinic end generated code: output=ec9f600e10f53510 input=e188afe8e58adf40]*/
|
/*[clinic end generated code: output=ec9f600e10f53510 input=e188afe8e58adf40]*/
|
||||||
{
|
{
|
||||||
PyObject *args, *b, *res;
|
PyObject *b, *res;
|
||||||
Py_ssize_t itemsize = self->ob_descr->itemsize;
|
Py_ssize_t itemsize = self->ob_descr->itemsize;
|
||||||
Py_ssize_t nbytes;
|
Py_ssize_t nbytes;
|
||||||
_Py_IDENTIFIER(read);
|
_Py_IDENTIFIER(read);
|
||||||
|
@ -1432,13 +1432,8 @@ array_array_fromfile_impl(arrayobject *self, PyObject *f, Py_ssize_t n)
|
||||||
|
|
||||||
not_enough_bytes = (PyBytes_GET_SIZE(b) != nbytes);
|
not_enough_bytes = (PyBytes_GET_SIZE(b) != nbytes);
|
||||||
|
|
||||||
args = Py_BuildValue("(O)", b);
|
res = array_array_frombytes(self, b);
|
||||||
Py_DECREF(b);
|
Py_DECREF(b);
|
||||||
if (args == NULL)
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
res = array_array_frombytes(self, args);
|
|
||||||
Py_DECREF(args);
|
|
||||||
if (res == NULL)
|
if (res == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
|
@ -2672,15 +2667,9 @@ array_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
|
||||||
}
|
}
|
||||||
else if (initial != NULL && (PyByteArray_Check(initial) ||
|
else if (initial != NULL && (PyByteArray_Check(initial) ||
|
||||||
PyBytes_Check(initial))) {
|
PyBytes_Check(initial))) {
|
||||||
PyObject *t_initial, *v;
|
PyObject *v;
|
||||||
t_initial = PyTuple_Pack(1, initial);
|
|
||||||
if (t_initial == NULL) {
|
|
||||||
Py_DECREF(a);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
v = array_array_frombytes((arrayobject *)a,
|
v = array_array_frombytes((arrayobject *)a,
|
||||||
t_initial);
|
initial);
|
||||||
Py_DECREF(t_initial);
|
|
||||||
if (v == NULL) {
|
if (v == NULL) {
|
||||||
Py_DECREF(a);
|
Py_DECREF(a);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
Loading…
Reference in New Issue