diff options
author | Marius Vollmer <mvo@zagadka.de> | 2002-10-10 18:11:06 +0000 |
---|---|---|
committer | Marius Vollmer <mvo@zagadka.de> | 2002-10-10 18:11:06 +0000 |
commit | e581432ec34259d07bdcdd0bde2d94a4e894ca81 (patch) | |
tree | 1602ba38a18fb9fc8ba7dbc3d922c9dc3d8edc9c /libguile/scmsigs.c | |
parent | acfa1f528ec59324ef2079bce5774105ecfd84e7 (diff) | |
download | guile-e581432ec34259d07bdcdd0bde2d94a4e894ca81.tar.gz |
(scm_sigaction_for_thread): Store original handler in signal_handlers,
not the closure that is used as the async. The closure is stored in
signal_handler_cells, as previously.
Diffstat (limited to 'libguile/scmsigs.c')
-rw-r--r-- | libguile/scmsigs.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/libguile/scmsigs.c b/libguile/scmsigs.c index ec1926eba..766a7b25d 100644 --- a/libguile/scmsigs.c +++ b/libguile/scmsigs.c @@ -273,10 +273,9 @@ SCM_DEFINE (scm_sigaction_for_thread, "sigaction", 1, 3, 0, if (orig_handlers[csig] == SIG_ERR) save_handler = 1; #endif - handler = close_1 (handler, signum); SCM_VECTOR_SET (*signal_handlers, csig, handler); SCM_VECTOR_SET (signal_handler_cells, csig, - scm_cons (handler, SCM_BOOL_F)); + scm_cons (close_1 (handler, signum), SCM_BOOL_F)); SCM_VECTOR_SET (signal_handler_threads, csig, thread); } |