[3.6] bpo-30246: fix several error messages which only mention bytes in struct (#3561)

This commit is contained in:
Xiang Zhang 2017-09-14 11:22:23 +08:00 committed by GitHub
parent 905e4ef86e
commit fa82dda101

View file

@ -1460,7 +1460,8 @@ s_init(PyObject *self, PyObject *args, PyObject *kwds)
if (!PyBytes_Check(o_format)) {
Py_DECREF(o_format);
PyErr_Format(PyExc_TypeError,
"Struct() argument 1 must be a bytes object, not %.200s",
"Struct() argument 1 must be a str or bytes object, "
"not %.200s",
Py_TYPE(o_format)->tp_name);
return -1;
}
@ -1541,7 +1542,7 @@ s_unpack(PyObject *self, PyObject *input)
return NULL;
if (vbuf.len != soself->s_size) {
PyErr_Format(StructError,
"unpack requires a bytes object of length %zd",
"unpack requires a buffer of %zd bytes",
soself->s_size);
PyBuffer_Release(&vbuf);
return NULL;
@ -1718,8 +1719,8 @@ s_iter_unpack(PyObject *_so, PyObject *input)
}
if (self->buf.len % so->s_size != 0) {
PyErr_Format(StructError,
"iterative unpacking requires a bytes length "
"multiple of %zd",
"iterative unpacking requires a buffer of "
"a multiple of %zd bytes",
so->s_size);
Py_DECREF(self);
return NULL;