X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Finterrupt.c;h=48bec248805ec4dc120b64c3cba736b70aa97fc7;hb=16847788605758f428ba9fc3f0f16bfcfda4a4e9;hp=e01097137b2279f1daddfd0233ad39688dd2ff2a;hpb=c3554861f21143572552a2ce8095fa9a13effa4f;p=sbcl.git diff --git a/src/runtime/interrupt.c b/src/runtime/interrupt.c index e010971..48bec24 100644 --- a/src/runtime/interrupt.c +++ b/src/runtime/interrupt.c @@ -186,6 +186,14 @@ block_blockable_signals(void) #endif } +void +block_deferrable_signals(void) +{ +#ifndef LISP_FEATURE_WIN32 + thread_sigmask(SIG_BLOCK, &deferrable_sigset, 0); +#endif +} + /* * utility routines used by various signal handlers @@ -814,7 +822,7 @@ gc_trigger_hit(int signal, siginfo_t *info, os_context_t *context) else{ void *badaddr=arch_get_bad_addr(signal,info,context); return (badaddr >= (void *)current_auto_gc_trigger && - badaddr <((void *)current_dynamic_space + DYNAMIC_SPACE_SIZE)); + badaddr <((void *)current_dynamic_space + dynamic_space_size)); } } #endif @@ -1376,3 +1384,11 @@ interrupt_init() SHOW("returning from interrupt_init()"); #endif } + +#ifndef LISP_FEATURE_WIN32 +int +siginfo_code(siginfo_t *info) +{ + return info->si_code; +} +#endif