diff options
author | Ludovic Courtès <ludo@gnu.org> | 2021-05-08 21:39:15 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2021-05-08 21:39:15 +0200 |
commit | 381291f5ff4480afbb197bf5e5a2272cfe54a386 (patch) | |
tree | 31ba38ab2f583db9db457a54f801b638d43d7400 /NEWS | |
parent | 5a281e35f4a5ae78fbcf10591d9358bec8f0bee0 (diff) | |
download | guile-381291f5ff4480afbb197bf5e5a2272cfe54a386.tar.gz |
'primitive-fork' closes and recreates the current thread's 'sleep_pipe'.
Partly fixes <https://bugs.gnu.org/41948>.
Previously, the child process could end up using the same 'sleep_pipe'
as its parent, leading to a race condition handling signals.
* libguile/posix.c (do_fork): New function.
(scm_fork): Call 'do_fork' via 'scm_without_guile'.
* test-suite/standalone/test-signal-fork: New test.
* test-suite/standalone/Makefile.am (check_SCRIPTS, TESTS): Add it.
Diffstat (limited to 'NEWS')
0 files changed, 0 insertions, 0 deletions