• Segev Finer's avatar
    bpo-19764: Implemented support for subprocess.Popen(close_fds=True) on Windows (#1218) · b2a6083e
    Segev Finer yazdı
    Even though Python marks any handles it opens as non-inheritable there
    is still a race when using `subprocess.Popen` since creating a process
    with redirected stdio requires temporarily creating inheritable handles.
    By implementing support for `subprocess.Popen(close_fds=True)` we fix
    this race.
    
    In order to implement this we use PROC_THREAD_ATTRIBUTE_HANDLE_LIST
    which is available since Windows Vista. Which allows to pass an explicit
    list of handles to inherit when creating a process.
    
    This commit also adds `STARTUPINFO.lpAttributeList["handle_list"]`
    which can be used to control PROC_THREAD_ATTRIBUTE_HANDLE_LIST
    directly.
    b2a6083e
Adı
Son kayıt (commit)
Son güncelleme
.github Loading commit data...
Doc Loading commit data...
Grammar Loading commit data...
Include Loading commit data...
Lib Loading commit data...
Mac Loading commit data...
Misc Loading commit data...
Modules Loading commit data...
Objects Loading commit data...
PC Loading commit data...
PCbuild Loading commit data...
Parser Loading commit data...
Programs Loading commit data...
Python Loading commit data...
Tools Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.hgeol Loading commit data...
.hgignore Loading commit data...
.hgtags Loading commit data...
.travis.yml Loading commit data...
LICENSE Loading commit data...
Makefile.pre.in Loading commit data...
README.rst Loading commit data...
aclocal.m4 Loading commit data...
config.guess Loading commit data...
config.sub Loading commit data...
configure Loading commit data...
configure.ac Loading commit data...
install-sh Loading commit data...
pyconfig.h.in Loading commit data...
setup.py Loading commit data...