Commit b77c6c65 authored by Stefan Krah's avatar Stefan Krah

Issue #12963: PyLong_AsSize_t() now returns (size_t)-1 in all error cases.

parent 4165bfb6
...@@ -525,8 +525,8 @@ PyLong_AsUnsignedLong(PyObject *vv) ...@@ -525,8 +525,8 @@ PyLong_AsUnsignedLong(PyObject *vv)
return x; return x;
} }
/* Get a C unsigned long int from a long int object. /* Get a C size_t from a long int object. Returns (size_t)-1 and sets
Returns -1 and sets an error condition if overflow occurs. */ an error condition if overflow occurs. */
size_t size_t
PyLong_AsSize_t(PyObject *vv) PyLong_AsSize_t(PyObject *vv)
...@@ -562,7 +562,7 @@ PyLong_AsSize_t(PyObject *vv) ...@@ -562,7 +562,7 @@ PyLong_AsSize_t(PyObject *vv)
if ((x >> PyLong_SHIFT) != prev) { if ((x >> PyLong_SHIFT) != prev) {
PyErr_SetString(PyExc_OverflowError, PyErr_SetString(PyExc_OverflowError,
"Python int too large to convert to C size_t"); "Python int too large to convert to C size_t");
return (unsigned long) -1; return (size_t) -1;
} }
} }
return x; return x;
......
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