Commit 784c7c2f authored by Timothy Sample's avatar Timothy Sample

Reset signal and exit handlers in subshells

* geesh/shell.scm (%subshell): In the child process, restore all
signal handlers to their original actions and unset the current
'atexit' handler.
parent 2b71b30d
...@@ -223,6 +223,8 @@ process." ...@@ -223,6 +223,8 @@ process."
(match (primitive-fork) (match (primitive-fork)
(0 (with-continuation-barrier (0 (with-continuation-barrier
(lambda () (lambda ()
(restore-signals)
(set-atexit! #f)
(thunk) (thunk)
(primitive-exit (get-status)))) (primitive-exit (get-status))))
(primitive-exit 1)) (primitive-exit 1))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment