Message321565
I tested fontforge. It became clear to me that the fontforge must be able to call Py_Initialize() and only later call Py_Main(). fontforge calls Py_Initialize() and then uses the Python API:
/* This is called to start up the embedded python interpreter */
void FontForge_InitializeEmbeddedPython(void) {
// static int python_initialized is declared above.
if ( python_initialized )
return;
SetPythonProgramName("fontforge");
RegisterAllPyModules();
Py_Initialize();
python_initialized = 1;
/* The embedded python interpreter is now functionally
* "running". We can modify it to our needs.
*/
CreateAllPyModules();
InitializePythonMainNamespace();
}
Py_Main() is called after FontForge_InitializeEmbeddedPython().
To be clear, Py_Main() must be fixed in Python 3.7 to apply properly the new configuration, or *at least* define sys.argv. |
|
Date |
User |
Action |
Args |
2018-07-12 15:27:04 | vstinner | set | recipients:
+ vstinner, ncoghlan, belopolsky, mcepl, eric.snow, emilyemorehouse, hroncok |
2018-07-12 15:27:04 | vstinner | set | messageid: <1531409224.57.0.56676864532.issue34008@psf.upfronthosting.co.za> |
2018-07-12 15:27:04 | vstinner | link | issue34008 messages |
2018-07-12 15:27:04 | vstinner | create | |
|