summaryrefslogtreecommitdiffstats
path: root/Python/pylifecycle.c
diff options
context:
space:
mode:
Diffstat (limited to 'Python/pylifecycle.c')
-rw-r--r--Python/pylifecycle.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c
index 23882d0..ceb30e9 100644
--- a/Python/pylifecycle.c
+++ b/Python/pylifecycle.c
@@ -1888,7 +1888,6 @@ finalize_interp_clear(PyThreadState *tstate)
_PyXI_Fini(tstate->interp);
_PyExc_ClearExceptionGroupType(tstate->interp);
_Py_clear_generic_types(tstate->interp);
- _PyDtoa_Fini(tstate->interp);
/* Clear interpreter state and all thread states */
_PyInterpreterState_Clear(tstate);
@@ -1910,6 +1909,9 @@ finalize_interp_clear(PyThreadState *tstate)
finalize_interp_types(tstate->interp);
+ /* Finalize dtoa at last so that finalizers calling repr of float doesn't crash */
+ _PyDtoa_Fini(tstate->interp);
+
/* Free any delayed free requests immediately */
_PyMem_FiniDelayed(tstate->interp);