mirror of
https://github.com/python/cpython.git
synced 2026-06-17 15:16:42 +00:00
[3.13] gh-151126: Add missing PyErr_NoMemory in _winapi module (GH-151154) (#151182)
gh-151126: Add missing `PyErr_NoMemory` in `_winapi` module (GH-151154)
(cherry picked from commit 8d94fa7b86)
Co-authored-by: sobolevn <mail@sobolevn.me>
This commit is contained in:
parent
b032f3fa17
commit
04884519ce
2 changed files with 10 additions and 3 deletions
|
|
@ -1,3 +1,7 @@
|
|||
Fix a crash, when there's no memory left on a device,
|
||||
which happened in code compilation.
|
||||
Now it raises a proper :exc:`MemoryError`.
|
||||
which happened in:
|
||||
|
||||
- code compilation
|
||||
- :func:`!_winapi.CreateProcess`
|
||||
|
||||
Now these places raise proper :exc:`MemoryError` errors.
|
||||
|
|
|
|||
|
|
@ -1184,8 +1184,10 @@ gethandlelist(PyObject *mapping, const char *name, Py_ssize_t *size)
|
|||
}
|
||||
|
||||
ret = PyMem_Malloc(*size);
|
||||
if (ret == NULL)
|
||||
if (ret == NULL) {
|
||||
PyErr_NoMemory();
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
for (i = 0; i < PySequence_Fast_GET_SIZE(value_fast); i++) {
|
||||
ret[i] = PYNUM_TO_HANDLE(PySequence_Fast_GET_ITEM(value_fast, i));
|
||||
|
|
@ -1268,6 +1270,7 @@ getattributelist(PyObject *obj, const char *name, AttributeList *attribute_list)
|
|||
attribute_list->attribute_list = PyMem_Malloc(attribute_list_size);
|
||||
if (attribute_list->attribute_list == NULL) {
|
||||
ret = -1;
|
||||
PyErr_NoMemory();
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue