mirror of
https://github.com/python/cpython.git
synced 2025-08-02 16:13:13 +00:00
bpo-34228: Allow PYTHONTRACEMALLOC=0 (GH-8467)
PYTHONTRACEMALLOC=0 environment variable and -X tracemalloc=0 command line option are now allowed to disable explicitly tracemalloc at startup.
This commit is contained in:
parent
96d1e69a12
commit
60b04c9f6f
4 changed files with 30 additions and 9 deletions
|
@ -1726,10 +1726,14 @@ pymain_init_tracemalloc(_PyCoreConfig *config)
|
|||
int nframe;
|
||||
int valid;
|
||||
|
||||
if (config->tracemalloc >= 0) {
|
||||
return _Py_INIT_OK();
|
||||
}
|
||||
|
||||
const char *env = config_get_env_var(config, "PYTHONTRACEMALLOC");
|
||||
if (env) {
|
||||
if (!pymain_str_to_int(env, &nframe)) {
|
||||
valid = (nframe >= 1);
|
||||
valid = (nframe >= 0);
|
||||
}
|
||||
else {
|
||||
valid = 0;
|
||||
|
@ -1746,7 +1750,7 @@ pymain_init_tracemalloc(_PyCoreConfig *config)
|
|||
const wchar_t *sep = wcschr(xoption, L'=');
|
||||
if (sep) {
|
||||
if (!pymain_wstr_to_int(sep + 1, &nframe)) {
|
||||
valid = (nframe >= 1);
|
||||
valid = (nframe >= 0);
|
||||
}
|
||||
else {
|
||||
valid = 0;
|
||||
|
@ -2249,17 +2253,22 @@ _PyCoreConfig_Read(_PyCoreConfig *config)
|
|||
|
||||
config_init_locale(config);
|
||||
|
||||
/* Signal handlers are installed by default */
|
||||
if (config->install_signal_handlers < 0) {
|
||||
config->install_signal_handlers = 1;
|
||||
}
|
||||
|
||||
if (config->_install_importlib) {
|
||||
err = _PyCoreConfig_InitPathConfig(config);
|
||||
if (_Py_INIT_FAILED(err)) {
|
||||
return err;
|
||||
}
|
||||
}
|
||||
|
||||
/* default values */
|
||||
if (config->tracemalloc < 0) {
|
||||
config->tracemalloc = 0;
|
||||
}
|
||||
if (config->install_signal_handlers < 0) {
|
||||
/* Signal handlers are installed by default */
|
||||
config->install_signal_handlers = 1;
|
||||
}
|
||||
|
||||
return _Py_INIT_OK();
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue