summaryrefslogtreecommitdiff
path: root/Programs
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@redhat.com>2018-08-01 02:13:04 +0200
committerGitHub <noreply@github.com>2018-08-01 02:13:04 +0200
commitb75d7e243512afcfb2285e6471262478383e09db (patch)
treea669ce23fbfe84ddbbb5b84ec0112df60ccf5f73 /Programs
parent8ed317f1ca42a43df14282bbc3ccc0b5610432f4 (diff)
downloadcpython-git-b75d7e243512afcfb2285e6471262478383e09db.tar.gz
bpo-34170: Add _PyCoreConfig._frozen parameter (GH-8591)
Modify frozenmain.c to use _Py_InitializeFromConfig().
Diffstat (limited to 'Programs')
-rw-r--r--Programs/_freeze_importlib.c3
-rw-r--r--Programs/_testembed.c6
2 files changed, 7 insertions, 2 deletions
diff --git a/Programs/_freeze_importlib.c b/Programs/_freeze_importlib.c
index 05ae59c841..fdf5013e54 100644
--- a/Programs/_freeze_importlib.c
+++ b/Programs/_freeze_importlib.c
@@ -82,8 +82,7 @@ main(int argc, char *argv[])
/* Don't install importlib, since it could execute outdated bytecode. */
config._install_importlib = 0;
config.install_signal_handlers = 1;
-
- Py_FrozenFlag++;
+ config._frozen = 1;
_PyInitError err = _Py_InitializeFromConfig(&config);
/* No need to call _PyCoreConfig_Clear() since we didn't allocate any
diff --git a/Programs/_testembed.c b/Programs/_testembed.c
index f7e774975f..94db29b8d8 100644
--- a/Programs/_testembed.c
+++ b/Programs/_testembed.c
@@ -368,6 +368,7 @@ dump_config(void)
printf("_install_importlib = %i\n", config->_install_importlib);
printf("_check_hash_pycs_mode = %s\n", config->_check_hash_pycs_mode);
+ printf("_frozen = %i\n", config->_frozen);
#undef ASSERT_EQUAL
#undef ASSERT_STR_EQUAL
@@ -420,6 +421,8 @@ static int test_init_global_config(void)
putenv("PYTHONUNBUFFERED=");
Py_UnbufferedStdioFlag = 1;
+ Py_FrozenFlag = 1;
+
/* FIXME: test Py_LegacyWindowsFSEncodingFlag */
/* FIXME: test Py_LegacyWindowsStdioFlag */
@@ -525,6 +528,9 @@ static int test_init_from_config(void)
config._check_hash_pycs_mode = "always";
+ Py_FrozenFlag = 0;
+ config._frozen = 1;
+
_PyInitError err = _Py_InitializeFromConfig(&config);
/* Don't call _PyCoreConfig_Clear() since all strings are static */
if (_Py_INIT_FAILED(err)) {