@@ -1909,22 +1909,24 @@ pymain_read_conf_impl(_PyMain *pymain, _Py_CommandLineDetails *cmdline)
19091909 return -1 ;
19101910 }
19111911
1912- /* Global configuration variables should be set to read the core
1913- configuration, and then get again to get updated values.
1914-
1915- _PyPathConfig_Init() tests !Py_FrozenFlag to avoid some warnings.
1916- Moreover, on Windows, it modifies Py_IsolatedFlag and Py_NoSiteFlag
1917- variables if a "._pth" file is found. */
1918- pymain_set_global_config (pymain , cmdline );
1912+ /* On Windows, _PyPathConfig_Init() modifies Py_IsolatedFlag and
1913+ Py_NoSiteFlag variables if a "._pth" file is found. */
1914+ int init_isolated = Py_IsolatedFlag ;
1915+ int init_no_site = Py_NoSiteFlag ;
1916+ Py_IsolatedFlag = cmdline -> isolated ;
1917+ Py_NoSiteFlag = cmdline -> no_site_import ;
19191918
19201919 err = _PyCoreConfig_Read (config );
1920+
1921+ cmdline -> isolated = Py_IsolatedFlag ;
1922+ cmdline -> no_site_import = Py_NoSiteFlag ;
1923+ Py_IsolatedFlag = init_isolated ;
1924+ Py_NoSiteFlag = init_no_site ;
1925+
19211926 if (_Py_INIT_FAILED (err )) {
19221927 pymain -> err = err ;
19231928 return -1 ;
19241929 }
1925-
1926- Py_UTF8Mode = pymain -> config .utf8_mode ;
1927- pymain_get_global_config (pymain , cmdline );
19281930 return 0 ;
19291931}
19301932
@@ -1948,8 +1950,6 @@ pymain_read_conf(_PyMain *pymain, _Py_CommandLineDetails *cmdline)
19481950 int locale_coerced = 0 ;
19491951 int loops = 0 ;
19501952 int init_ignore_env = pymain -> config .ignore_environment ;
1951- int init_isolated = cmdline -> isolated ;
1952- int init_no_site = cmdline -> no_site_import ;
19531953
19541954 while (1 ) {
19551955 int utf8_mode = pymain -> config .utf8_mode ;
@@ -2011,8 +2011,6 @@ pymain_read_conf(_PyMain *pymain, _Py_CommandLineDetails *cmdline)
20112011 modified by _PyCoreConfig_Read(). */
20122012 Py_UTF8Mode = pymain -> config .utf8_mode ;
20132013 Py_IgnoreEnvironmentFlag = init_ignore_env ;
2014- Py_IsolatedFlag = init_isolated ;
2015- Py_NoSiteFlag = init_no_site ;
20162014 _PyCoreConfig_Clear (& pymain -> config );
20172015 pymain_clear_cmdline (pymain , cmdline );
20182016 pymain_get_global_config (pymain , cmdline );
0 commit comments