bpo-32096: Remove obj and mem from _PyRuntime#4532
bpo-32096: Remove obj and mem from _PyRuntime#4532vstinner merged 7 commits intopython:masterfrom vstinner:pymem_revert
Conversation
bpo-32096, bpo-30860: Partially revert the commit 2ebc5ce: * Move structures back from Include/internal/mem.h to Objects/obmalloc.c * Remove _PyObject_Initialize() and _PyMem_Initialize() * Remove Include/internal/pymalloc.h PyMem_RawMalloc() and Py_DecodeLocale() can be called again before _PyRuntimeState_Init().
ncoghlan
left a comment
There was a problem hiding this comment.
While I'm +1 for this reversion, it should have a NEWS entry, since it's reverting changes that were published in previous alpha releases.
It should also incorporate @ericsnowcurrently's new test case from https://github.com/python/cpython/pull/4495/files#diff-559231a69a7d7f06ab48269b3bfa1f45, to confirm that it actually is fixing the regression it's intended to fix.
|
When you're done making the requested changes, leave the comment: |
Make sure that it's possible to call Py_DecodeLocale(), and then call Py_SetProgramName() with the decoded string, before Py_Initialize(). Co-Authored-By: Eric Snow <[email protected]>
I added the NEWS entry and copied Eric's unit test
| @@ -0,0 +1,4 @@ | |||
| Revert memory allocator changes in the C API: move structures back from | |||
| _PyRuntime to Objects/obmalloc.c. The memory allocators are now initialized | |||
| again statically, and so PyMem_RawMalloc() and Py_DecodeLocale() can be | |||
There was a problem hiding this comment.
Slight grammar tweak: "now initialized again" -> "once again initialized"
bpo-32096, bpo-30860: Partially revert the commit
2ebc5ce:
Objects/obmalloc.c
PyMem_RawMalloc() and Py_DecodeLocale() can be called again before
_PyRuntimeState_Init().
https://bugs.python.org/issue32096