Kaydet (Commit) 02252480 authored tarafından Benjamin Peterson's avatar Benjamin Peterson

Victor Stinner's patches to check the return result of PyLong_Ssize_t

reviewed by Amaury
üst 8d77d448
......@@ -221,6 +221,8 @@ bytesio_read(BytesIOObject *self, PyObject *args)
if (PyInt_Check(arg)) {
size = PyInt_AsSsize_t(arg);
if (size == -1 && PyErr_Occurred())
return NULL;
}
else if (arg == Py_None) {
/* Read until EOF is reached, by default. */
......@@ -288,6 +290,8 @@ bytesio_readline(BytesIOObject *self, PyObject *args)
if (PyInt_Check(arg)) {
size = PyInt_AsSsize_t(arg);
if (size == -1 && PyErr_Occurred())
return NULL;
}
else if (arg == Py_None) {
/* No size limit, by default. */
......@@ -332,6 +336,8 @@ bytesio_readlines(BytesIOObject *self, PyObject *args)
if (PyInt_Check(arg)) {
maxsize = PyInt_AsSsize_t(arg);
if (maxsize == -1 && PyErr_Occurred())
return NULL;
}
else if (arg == Py_None) {
/* No size limit, by default. */
......@@ -415,6 +421,8 @@ bytesio_truncate(BytesIOObject *self, PyObject *args)
if (PyInt_Check(arg)) {
size = PyInt_AsSsize_t(arg);
if (size == -1 && PyErr_Occurred())
return NULL;
}
else if (arg == Py_None) {
/* Truncate to current position if no argument is passed. */
......
......@@ -1755,6 +1755,8 @@ s_pack_into(PyObject *self, PyObject *args)
/* Extract the offset from the first argument */
offset = PyInt_AsSsize_t(PyTuple_GET_ITEM(args, 1));
if (offset == -1 && PyErr_Occurred())
return NULL;
/* Support negative offsets. */
if (offset < 0)
......
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