Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork33.3k
Closed
Description
Bug report
The following code paths should probably returns some sort of exception status (possibly_PyStatus_NO_MEMORY()).
Lines 2084 to 2088 ina1551b4
| PyInterpreterState*interp=PyInterpreterState_New(); | |
| if (interp==NULL) { | |
| *tstate_p=NULL; | |
| return_PyStatus_OK(); | |
| } |
Lines 2090 to 2096 ina1551b4
| PyThreadState*tstate=_PyThreadState_New(interp, | |
| _PyThreadState_WHENCE_INTERP); | |
| if (tstate==NULL) { | |
| PyInterpreterState_Delete(interp); | |
| *tstate_p=NULL; | |
| return_PyStatus_OK(); | |
| } |
Note thatPyInterpreterState_New() currently never returns NULL -- it callsPy_FatalError() instead -- but we should probably still handle that case as well.
_PyThreadState_New can return NULL when out of memory.
Linked PRs
- gh-112729: Correctly fail when the process is out of memory during interpreter creation #139164
- [3.14] gh-112729: Correctly fail when the process is out of memory during interpreter creation (GH-139164) #139168
- [3.13] gh-112729: Correctly fail when the process is out of memory during interpreter creation (GH-139164) #139169
Metadata
Metadata
Assignees
Labels
Projects
Status
Done