Skip to content

Commit 2ec1a1b

Browse files
authored
bpo-38858: new_interpreter() uses pycore_init_import_warnings() (GH-17353)
1 parent 2582d46 commit 2ec1a1b

File tree

1 file changed

+11
-14
lines changed

1 file changed

+11
-14
lines changed

Python/pylifecycle.c

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -665,15 +665,17 @@ pycore_init_import_warnings(PyThreadState *tstate, PyObject *sysmod)
665665
return status;
666666
}
667667

668-
/* Initialize _warnings. */
669-
if (_PyWarnings_Init() == NULL) {
670-
return _PyStatus_ERR("can't initialize warnings");
671-
}
668+
if (_Py_IsMainInterpreter(tstate)) {
669+
/* Initialize _warnings. */
670+
if (_PyWarnings_Init() == NULL) {
671+
return _PyStatus_ERR("can't initialize warnings");
672+
}
672673

673-
if (config->_install_importlib) {
674-
status = _PyConfig_WritePathConfig(config);
675-
if (_PyStatus_EXCEPTION(status)) {
676-
return status;
674+
if (config->_install_importlib) {
675+
status = _PyConfig_WritePathConfig(config);
676+
if (_PyStatus_EXCEPTION(status)) {
677+
return status;
678+
}
677679
}
678680
}
679681

@@ -1575,12 +1577,7 @@ new_interpreter(PyThreadState **tstate_p)
15751577
goto done;
15761578
}
15771579

1578-
status = _PyImportHooks_Init(tstate);
1579-
if (_PyStatus_EXCEPTION(status)) {
1580-
goto done;
1581-
}
1582-
1583-
status = init_importlib(tstate, sysmod);
1580+
status = pycore_init_import_warnings(tstate, sysmod);
15841581
if (_PyStatus_EXCEPTION(status)) {
15851582
goto done;
15861583
}

0 commit comments

Comments
 (0)