gh-104456: Fix ref leak in _ctypes.COMError#104457
Conversation
|
🤖 New build scheduled with the buildbot fleet by @AlexWaygood for commit 8dbad09 🤖 If you want to schedule another build, you need to add the 🔨 test-with-refleak-buildbots label again. |
Sorry, something went wrong.
|
Thanks Alex for the buildbots start. But, no one from buildbots use a windows system. |
Sorry, something went wrong.
|
!buildbot Windows.*Refleak |
Sorry, something went wrong.
|
🤖 New build scheduled with the buildbot fleet by @AlexWaygood for commit 8dbad09 🤖 The command will test the builders whose names match following regular expression: The builders matched are: |
Sorry, something went wrong.
|
!buildbot .*Windows.Refleak. |
Sorry, something went wrong.
|
🤖 New build scheduled with the buildbot fleet by @AlexWaygood for commit 8dbad09 🤖 The command will test the builders whose names match following regular expression: The builders matched are: |
Sorry, something went wrong.
erlend-aasland
left a comment
There was a problem hiding this comment.
Please add a Py_tp_clear slot and do the work there. You can call that function from dealloc. Also, the traverse function must be updated similarly.
Sorry, something went wrong.
|
A Python core developer has requested some changes be made to your pull request before we can consider merging it. If you could please address their requests along with any other requests in other reviews from core developers that would be appreciated. Once you have made the requested changes, please leave a comment on this pull request containing the phrase |
Sorry, something went wrong.
|
Also, in dealloc we first untrack from GC, then we clear. |
Sorry, something went wrong.
|
I have made the requested changes; please review again |
Sorry, something went wrong.
|
Thanks for making the requested changes! @erlend-aasland: please review the changes made to this pull request. |
Sorry, something went wrong.
|
I left some more remarks. I'll follow this up tomorrow. |
Sorry, something went wrong.
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
|
Could you let me know if you've confirmed the error is fixed on Windows? @Eclips4 |
Sorry, something went wrong.
Yeah, refleak are gone: ./python -m test -R 3:3 test_ctypes
Running Debug|x64 interpreter...
0:00:00 Run tests sequentially
0:00:00 [1/1] test_ctypes
beginning 6 repetitions
123456
a=5, b=10, c=15
a=5, b=10, c=15
.a=5, b=10, c=15
a=5, b=10, c=15
.a=5, b=10, c=15
a=5, b=10, c=15
.a=5, b=10, c=15
a=5, b=10, c=15
.a=5, b=10, c=15
a=5, b=10, c=15
.a=5, b=10, c=15
a=5, b=10, c=15
.
test_ctypes passed in 31.2 sec
== Tests result: SUCCESS ==
1 test OK.
Total duration: 31.3 sec
Tests result: SUCCESSAlso, thanks for your help! |
Sorry, something went wrong.
|
Thanks! |
Sorry, something went wrong.
* main: (29 commits) pythongh-101819: Fix _io clinic input for unused base class method stubs (python#104418) pythongh-101819: Isolate `_io` (python#101948) Bump mypy from 1.2.0 to 1.3.0 in /Tools/clinic (python#104501) pythongh-104494: Update certain Tkinter pack/place tests for Tk 8.7 errors (python#104495) pythongh-104050: Run mypy on `clinic.py` in CI (python#104421) pythongh-104490: Consistently define phony make targets (python#104491) pythongh-67056: document that registering/unregistering an atexit func from within an atexit func is undefined (python#104473) pythongh-104487: PYTHON_FOR_REGEN must be minimum Python 3.10 (python#104488) pythongh-101282: move BOLT config after PGO (pythongh-104493) pythongh-104469 Convert _testcapi/float.c to use AC (pythongh-104470) pythongh-104456: Fix ref leak in _ctypes.COMError (python#104457) pythongh-98539: Make _SSLTransportProtocol.abort() safe to call when closed (python#104474) pythongh-104337: Clarify random.gammavariate doc entry (python#104410) Minor improvements to typing docs (python#104465) pythongh-87092: avoid gcc warning on uninitialized struct field in assemble.c (python#104460) pythonGH-71383: IDLE - Document testing subsets of modules (python#104463) pythongh-104454: Fix refleak in AttributeError_reduce (python#104455) pythongh-75710: IDLE - add docstrings and comments to editor module (python#104446) pythongh-91896: Revert some very noisy DeprecationWarnings for `ByteString` (python#104424) Add a mention of PYTHONBREAKPOINT to breakpoint() docs (python#104430) ...
* main: (204 commits) pythongh-101819: Fix _io clinic input for unused base class method stubs (python#104418) pythongh-101819: Isolate `_io` (python#101948) Bump mypy from 1.2.0 to 1.3.0 in /Tools/clinic (python#104501) pythongh-104494: Update certain Tkinter pack/place tests for Tk 8.7 errors (python#104495) pythongh-104050: Run mypy on `clinic.py` in CI (python#104421) pythongh-104490: Consistently define phony make targets (python#104491) pythongh-67056: document that registering/unregistering an atexit func from within an atexit func is undefined (python#104473) pythongh-104487: PYTHON_FOR_REGEN must be minimum Python 3.10 (python#104488) pythongh-101282: move BOLT config after PGO (pythongh-104493) pythongh-104469 Convert _testcapi/float.c to use AC (pythongh-104470) pythongh-104456: Fix ref leak in _ctypes.COMError (python#104457) pythongh-98539: Make _SSLTransportProtocol.abort() safe to call when closed (python#104474) pythongh-104337: Clarify random.gammavariate doc entry (python#104410) Minor improvements to typing docs (python#104465) pythongh-87092: avoid gcc warning on uninitialized struct field in assemble.c (python#104460) pythonGH-71383: IDLE - Document testing subsets of modules (python#104463) pythongh-104454: Fix refleak in AttributeError_reduce (python#104455) pythongh-75710: IDLE - add docstrings and comments to editor module (python#104446) pythongh-91896: Revert some very noisy DeprecationWarnings for `ByteString` (python#104424) Add a mention of PYTHONBREAKPOINT to breakpoint() docs (python#104430) ...
edited by bedevere-bot
LoadingUh oh!
There was an error while loading. Please reload this page.
Copy link Copy MarkdownSorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.