From 7bb41aef4b7b8f3c3f07c11b801c5b7f8afaac7f Mon Sep 17 00:00:00 2001 From: Donghee Na Date: Wed, 26 Mar 2025 09:45:29 +0900 Subject: [PATCH] gh-131740: Update PyUnstable_GC_VisitObjects to traverse perm gen (gh-131744) --- .../C_API/2025-03-26-06-56-40.gh-issue-131740.9PdxxQ.rst | 1 + Python/gc.c | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 Misc/NEWS.d/next/C_API/2025-03-26-06-56-40.gh-issue-131740.9PdxxQ.rst diff --git a/Misc/NEWS.d/next/C_API/2025-03-26-06-56-40.gh-issue-131740.9PdxxQ.rst b/Misc/NEWS.d/next/C_API/2025-03-26-06-56-40.gh-issue-131740.9PdxxQ.rst new file mode 100644 index 000000000000..585f07aaddd8 --- /dev/null +++ b/Misc/NEWS.d/next/C_API/2025-03-26-06-56-40.gh-issue-131740.9PdxxQ.rst @@ -0,0 +1 @@ +Update PyUnstable_GC_VisitObjects to traverse perm gen. diff --git a/Python/gc.c b/Python/gc.c index a2ec0e567b5e..8d7f6ac2f3ab 100644 --- a/Python/gc.c +++ b/Python/gc.c @@ -2415,7 +2415,10 @@ PyUnstable_GC_VisitObjects(gcvisitobjects_t callback, void *arg) if (visit_generation(callback, arg, &gcstate->old[0])) { goto done; } - visit_generation(callback, arg, &gcstate->old[1]); + if (visit_generation(callback, arg, &gcstate->old[1])) { + goto done; + } + visit_generation(callback, arg, &gcstate->permanent_generation); done: gcstate->enabled = origenstate; } -- 2.47.3