bpo-34170: Add _PyCoreConfig._frozen parameter (GH-8591)
Modify frozenmain.c to use _Py_InitializeFromConfig().
diff --git a/Python/frozenmain.c b/Python/frozenmain.c
index a3b6196..86af2b6 100644
--- a/Python/frozenmain.c
+++ b/Python/frozenmain.c
@@ -41,7 +41,8 @@
}
}
- Py_FrozenFlag = 1; /* Suppress errors from getpath.c */
+ _PyCoreConfig config = _PyCoreConfig_INIT;
+ config._frozen = 1; /* Suppress errors from getpath.c */
if ((p = Py_GETENV("PYTHONINSPECT")) && *p != '\0')
inspect = 1;
@@ -80,7 +81,14 @@
#endif /* MS_WINDOWS */
if (argc >= 1)
Py_SetProgramName(argv_copy[0]);
- Py_Initialize();
+
+ err = _Py_InitializeFromConfig(&config);
+ /* No need to call _PyCoreConfig_Clear() since we didn't allocate any
+ memory: program_name is a constant string. */
+ if (_Py_INIT_FAILED(err)) {
+ _Py_FatalInitError(err);
+ }
+
#ifdef MS_WINDOWS
PyWinFreeze_ExeInit();
#endif