diff options
author | Gary Houston <ghouston@arglist.com> | 1997-06-01 08:08:49 +0000 |
---|---|---|
committer | Gary Houston <ghouston@arglist.com> | 1997-06-01 08:08:49 +0000 |
commit | 2ad6b1a531a39fb95500d148e5025f45bca1e20d (patch) | |
tree | d33acdaca82eb872c31c8beb3b67bb23ee3df9c1 | |
parent | 115b09a50439e841041555bf1f4d6837108f8a6f (diff) | |
download | guile-2ad6b1a531a39fb95500d148e5025f45bca1e20d.tar.gz |
* scmsigs.c (sys_deliver_signals): bug fix: reset got_signal[i]
before applying the handler in case it doesn't return.
-rw-r--r-- | libguile/ChangeLog | 5 | ||||
-rw-r--r-- | libguile/scmsigs.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/libguile/ChangeLog b/libguile/ChangeLog index 8bcfb3fcb..55869b161 100644 --- a/libguile/ChangeLog +++ b/libguile/ChangeLog @@ -1,3 +1,8 @@ +Sun Jun 1 07:58:41 1997 Gary Houston <ghouston@actrix.gen.nz> + + * scmsigs.c (sys_deliver_signals): bug fix: reset got_signal[i] + before applying the handler in case it doesn't return. + Sat May 31 18:57:51 1997 Gary Houston <ghouston@actrix.gen.nz> * scmsigs.h, async.h: updated. diff --git a/libguile/scmsigs.c b/libguile/scmsigs.c index fe11eb651..2a53c3e44 100644 --- a/libguile/scmsigs.c +++ b/libguile/scmsigs.c @@ -140,13 +140,13 @@ sys_deliver_signals (void) { if (got_signal[i]) { - scm_apply (SCM_VELTS (*signal_handlers)[i], - scm_listify (SCM_MAKINUM (i), SCM_UNDEFINED), - SCM_EOL); got_signal[i] = 0; #ifndef HAVE_SIGACTION signal (i, take_signal); #endif + scm_apply (SCM_VELTS (*signal_handlers)[i], + scm_listify (SCM_MAKINUM (i), SCM_UNDEFINED), + SCM_EOL); } } return SCM_UNSPECIFIED; |