summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorInada Naoki <songofacandy@gmail.com>2019-08-31 01:50:27 (GMT)
committerGitHub <noreply@github.com>2019-08-31 01:50:27 (GMT)
commit97a31c7b486c45ba9c21cab5fb96337859a60275 (patch)
treee91a43674bdbb26550eaad278e56498043615660
parentbd8ca9aaccef0569c4b5c2e6dad0feb869ffd6c5 (diff)
downloadcpython-97a31c7b486c45ba9c21cab5fb96337859a60275.zip
cpython-97a31c7b486c45ba9c21cab5fb96337859a60275.tar.gz
cpython-97a31c7b486c45ba9c21cab5fb96337859a60275.tar.bz2
[3.8] bpo-37990: fix gc stats (GH-15626)
(cherry picked from commit 013e52f)
-rw-r--r--Misc/NEWS.d/next/Core and Builtins/2019-08-31-09-22-33.bpo-37990.WDY2f-.rst2
-rw-r--r--Modules/gcmodule.c5
2 files changed, 5 insertions, 2 deletions
diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-08-31-09-22-33.bpo-37990.WDY2f-.rst b/Misc/NEWS.d/next/Core and Builtins/2019-08-31-09-22-33.bpo-37990.WDY2f-.rst
new file mode 100644
index 0000000..39edc59
--- /dev/null
+++ b/Misc/NEWS.d/next/Core and Builtins/2019-08-31-09-22-33.bpo-37990.WDY2f-.rst
@@ -0,0 +1,2 @@
+Fix elapsed time in gc stats was not printed correctly. This bug was
+a regression in 3.8b4.
diff --git a/Modules/gcmodule.c b/Modules/gcmodule.c
index 21839d9..2741edc 100644
--- a/Modules/gcmodule.c
+++ b/Modules/gcmodule.c
@@ -1115,8 +1115,9 @@ collect(struct _gc_runtime_state *state, int generation,
}
if (state->debug & DEBUG_STATS) {
double d = _PyTime_AsSecondsDouble(_PyTime_GetMonotonicClock() - t1);
- PySys_FormatStderr(
- "gc: done, %zd unreachable, %zd uncollectable, %.4fs elapsed\n",
+ PySys_WriteStderr(
+ "gc: done, %" PY_FORMAT_SIZE_T "d unreachable, "
+ "%" PY_FORMAT_SIZE_T "d uncollectable, %.4fs elapsed\n",
n+m, n, d);
}