summaryrefslogtreecommitdiff
path: root/Objects/object.c
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2017-11-20 18:12:22 -0800
committerGitHub <noreply@github.com>2017-11-20 18:12:22 -0800
commit25420fe290b98171e6d30edf9350292c21ef700e (patch)
tree265d725ef6c341501f38873266c91e7461fd0364 /Objects/object.c
parent09f3a8a1249308a104a89041d82fe99e6c087043 (diff)
downloadcpython-git-25420fe290b98171e6d30edf9350292c21ef700e.tar.gz
bpo-32030: Add more options to _PyCoreConfig (#4485)
Py_Main() now handles two more -X options: * -X showrefcount: new _PyCoreConfig.show_ref_count field * -X showalloccount: new _PyCoreConfig.show_alloc_count field
Diffstat (limited to 'Objects/object.c')
-rw-r--r--Objects/object.c23
1 files changed, 3 insertions, 20 deletions
diff --git a/Objects/object.c b/Objects/object.c
index ed8a62a163..674180d720 100644
--- a/Objects/object.c
+++ b/Objects/object.c
@@ -29,17 +29,6 @@ _Py_GetRefTotal(void)
return total;
}
-PyObject *
-_PyDebug_XOptionShowRefCount(void)
-{
- PyObject *xoptions = PySys_GetXOptions();
- if (xoptions == NULL)
- return NULL;
-
- _Py_IDENTIFIER(showrefcount);
- return _PyDict_GetItemId(xoptions, &PyId_showrefcount);
-}
-
void
_PyDebug_PrintTotalRefs(void) {
fprintf(stderr,
@@ -106,16 +95,10 @@ extern Py_ssize_t null_strings, one_strings;
void
dump_counts(FILE* f)
{
- PyTypeObject *tp;
- PyObject *xoptions, *value;
- _Py_IDENTIFIER(showalloccount);
-
- xoptions = PySys_GetXOptions();
- if (xoptions == NULL)
- return;
- value = _PyDict_GetItemId(xoptions, &PyId_showalloccount);
- if (value != Py_True)
+ PyInterpreterState *interp = PyThreadState_GET()->interp;
+ if (!inter->core_config.show_alloc_count) {
return;
+ }
for (tp = type_list; tp; tp = tp->tp_next)
fprintf(f, "%s alloc'd: %" PY_FORMAT_SIZE_T "d, "