bpo-38304: Fix PyConfig usage in python_uwp.cpp (GH-16488)

* Set PyPreConfig.struct_size and PyConfig.struct_size as required by
  the API.
* PyPreConfig_InitPythonConfig() can now fail: check PyStatus result.
This commit is contained in:
Victor Stinner 2019-09-30 12:53:17 +02:00 committed by GitHub
parent bfca56b3dd
commit 81f6b031c4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 1 deletions

View File

@ -167,7 +167,10 @@ wmain(int argc, wchar_t **argv)
PyStatus status;
PyPreConfig preconfig;
preconfig.struct_size = sizeof(PyPreConfig);
PyConfig config;
config.struct_size = sizeof(PyConfig);
const wchar_t *moduleName = NULL;
const wchar_t *p = wcsrchr(argv[0], L'\\');
@ -186,7 +189,10 @@ wmain(int argc, wchar_t **argv)
}
}
PyPreConfig_InitPythonConfig(&preconfig);
status = PyPreConfig_InitPythonConfig(&preconfig);
if (PyStatus_Exception(status)) {
goto fail_without_config;
}
if (!moduleName) {
status = Py_PreInitializeFromArgs(&preconfig, argc, argv);
if (PyStatus_Exception(status)) {