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 00000000000000..585f07aaddd8c8 --- /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 f2a88657e8d8d6..db75a7a93a85db 100644 --- a/Python/gc.c +++ b/Python/gc.c @@ -2414,7 +2414,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; }