summaryrefslogtreecommitdiffstats
path: root/Modules/_bytesio.c
diff options
context:
space:
mode:
Diffstat (limited to 'Modules/_bytesio.c')
-rw-r--r--Modules/_bytesio.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/Modules/_bytesio.c b/Modules/_bytesio.c
index 8c5bb82..c5c14b3 100644
--- a/Modules/_bytesio.c
+++ b/Modules/_bytesio.c
@@ -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. */