mirror of
https://github.com/python/cpython.git
synced 2025-08-31 22:18:28 +00:00
[3.13] gh-126594: Fix typeobject.c wrap_buffer() cast (GH-126754) (#127004)
gh-126594: Fix typeobject.c wrap_buffer() cast (GH-126754)
Reject flags smaller than INT_MIN.
(cherry picked from commit 84f07c3a4c
)
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
This commit is contained in:
parent
190d710e68
commit
fd276ad328
2 changed files with 18 additions and 3 deletions
|
@ -8952,13 +8952,13 @@ wrap_buffer(PyObject *self, PyObject *args, void *wrapped)
|
|||
if (flags == -1 && PyErr_Occurred()) {
|
||||
return NULL;
|
||||
}
|
||||
if (flags > INT_MAX) {
|
||||
if (flags > INT_MAX || flags < INT_MIN) {
|
||||
PyErr_SetString(PyExc_OverflowError,
|
||||
"buffer flags too large");
|
||||
"buffer flags out of range");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return _PyMemoryView_FromBufferProc(self, Py_SAFE_DOWNCAST(flags, Py_ssize_t, int),
|
||||
return _PyMemoryView_FromBufferProc(self, (int)flags,
|
||||
(getbufferproc)wrapped);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue