diff options
author | Andy Wingo <wingo@pobox.com> | 2016-06-24 09:50:23 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2016-06-24 09:50:23 +0200 |
commit | 7d550c4ea0c78c5f4a726cae03bf812a246a6dde (patch) | |
tree | a6c6dba49575b30bbbe0db685f647b05cfebf9a7 | |
parent | 20718dd94b8360e67c4df9caa5af3e079167e2a6 (diff) | |
download | guile-7d550c4ea0c78c5f4a726cae03bf812a246a6dde.tar.gz |
Fix ,profile in pure modules
* libguile/scmsigs.c (close_1): Make the async closure in an environment
where `lambda' has its usual meaning. Fixes #21013.
-rw-r--r-- | libguile/scmsigs.c | 6 |
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 |