]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
gh-99952: [ctypes] fix refcount issues in from_param() result. (#100169)
authorYukihiro Nakadaira <yukihiro.nakadaira@gmail.com>
Thu, 26 Jan 2023 08:28:34 +0000 (17:28 +0900)
committerGitHub <noreply@github.com>
Thu, 26 Jan 2023 08:28:34 +0000 (00:28 -0800)
commitdfad678d7024ab86d265d84ed45999e031a03691
treeeb749dbc9392eb494a8b36faba1cb13ae563ae20
parentf5ad63f79af3a5876f90b409d0c8402fa54e878a
gh-99952: [ctypes] fix refcount issues in from_param() result. (#100169)

Fixes a reference counting issue with `ctypes.Structure` when a `from_param()` method call is used and the structure size is larger than a C pointer `sizeof(void*)`.

This problem existed for a very long time, but became more apparent in 3.8+ by change likely due to garbage collection cleanup timing changes.
Lib/test/test_ctypes/test_parameters.py
Misc/NEWS.d/next/Library/2022-12-11-14-38-59.gh-issue-99952.IYGLzr.rst [new file with mode: 0644]
Modules/_ctypes/_ctypes.c
Modules/_ctypes/_ctypes_test.c