summaryrefslogtreecommitdiffstats
path: root/Python/pythonrun.c
diff options
context:
space:
mode:
authorEric Snow <ericsnowcurrently@gmail.com>2017-09-12 00:59:22 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2017-09-12 00:59:22 (GMT)
commit8728018624f257c7cfe44014742ae46134047f49 (patch)
treed3465549106d04472cb05f70b317f20dd7fc77f6 /Python/pythonrun.c
parentba6d5d1defd7a281c8c8804e4b4cfd7370886236 (diff)
downloadcpython-8728018624f257c7cfe44014742ae46134047f49.zip
cpython-8728018624f257c7cfe44014742ae46134047f49.tar.gz
cpython-8728018624f257c7cfe44014742ae46134047f49.tar.bz2
bpo-30860: Fix a refleak. (#3506)
* Drop warnoptions from PyInterpreterState. * Drop xoptions from PyInterpreterState. * Don't set warnoptions and _xoptions again. * Decref after adding to sys.__dict__. * Drop an unused macro. * Check sys.xoptions *before* we delete it.
Diffstat (limited to 'Python/pythonrun.c')
-rw-r--r--Python/pythonrun.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index d1d4a69..df814fb 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -113,7 +113,10 @@ PyRun_InteractiveLoopFlags(FILE *fp, const char *filename_str, PyCompilerFlags *
err = -1;
for (;;) {
ret = PyRun_InteractiveOneObject(fp, filename, flags);
- _PY_DEBUG_PRINT_TOTAL_REFS();
+#ifdef Py_REF_DEBUG
+ if (_PyDebug_XOptionShowRefCount() == Py_True)
+ _PyDebug_PrintTotalRefs();
+#endif
if (ret == E_EOF) {
err = 0;
break;