v2: Introduce init_cygheap::lock/unlock
v3: Separate init_cygheap::lock/unlock patch and spawn patch
v4: Inline init_cygheap::lock/unlock
v5: Lock cygheap only when iscygwin() case
v6: Introduce spawn_cygheap_lock/unlock
Call another child_info_spawn constructor for local ch_spawn
v7: Instead of v5, move close_all_files() to outside of locked region
Takashi Yano (3):
Cygwin: cygheap: Add lock()/unlock() method
Cygwin: spawn: Lock cygheap from refresh_cygheap() until child_copy()
Cygwin: spawn: Make system() thread-safe
winsup/cygwin/local_includes/cygheap.h | 5 +++++
winsup/cygwin/mm/cygheap.cc | 12 ++++++------
winsup/cygwin/spawn.cc | 15 +++++++++------
winsup/cygwin/syscalls.cc | 5 +++--
4 files changed, 23 insertions(+), 14 deletions(-)
--
2.45.1