summaryrefslogtreecommitdiff
path: root/libguile/scmsigs.c
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/scmsigs.c')
-rw-r--r--libguile/scmsigs.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libguile/scmsigs.c b/libguile/scmsigs.c
index a23f151a2..441da3ec7 100644
--- a/libguile/scmsigs.c
+++ b/libguile/scmsigs.c
@@ -109,8 +109,10 @@ static SIGRETTYPE (*orig_handlers[NSIG])(int);
static SCM
close_1 (SCM proc, SCM arg)
{
- return scm_primitive_eval_x (scm_list_3 (scm_sym_lambda, SCM_EOL,
- scm_list_2 (proc, arg)));
+ /* Eval in the root module so that `lambda' has its usual meaning. */
+ return scm_eval (scm_list_3 (scm_sym_lambda, SCM_EOL,
+ scm_list_2 (proc, arg)),
+ scm_the_root_module ());
}
#if SCM_USE_PTHREAD_THREADS