[prev in list] [next in list] [prev in thread] [next in thread] 

List:       sbcl-commits
Subject:    [Sbcl-commits] master: Fix +darwin -sb-thread
From:       stassats via Sbcl-commits <sbcl-commits () lists ! sourceforge ! net>
Date:       2023-06-29 10:15:59
Message-ID: 1688033759.771123.13961 () sfp-scm-3 ! v30 ! lw ! sourceforge ! com
[Download RAW message or body]

The branch "master" has been updated in SBCL:
       via  09e34ec745ae073d7ea178821d1a7a8f13c135df (commit)
      from  b3c16dc5328ad2dc5beea534f7fa89f41cbe802b (commit)

- Log -----------------------------------------------------------------
commit 09e34ec745ae073d7ea178821d1a7a8f13c135df
Author: Stas Boukarev <stassats@gmail.com>
Date:   Thu Jun 29 13:15:14 2023 +0300

    Fix +darwin -sb-thread
---
 src/runtime/interrupt.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/runtime/interrupt.c b/src/runtime/interrupt.c
index 70181a888..a1a972d73 100644
--- a/src/runtime/interrupt.c
+++ b/src/runtime/interrupt.c
@@ -1925,7 +1925,7 @@ low_level_handle_now_handler(int signal, siginfo_t *info, void *void_context)
     if (lisp_thread_p(void_context)) {
         interrupt_low_level_handlers[signal](signal, info, context);
     }
-#ifdef LISP_FEATURE_DARWIN
+#if defined LISP_FEATURE_DARWIN && defined LISP_FEATURE_SB_THREAD
     else if (signal == SIG_STOP_FOR_GC && pthread_getspecific(ignore_stop_for_gc)) {
         /* Clearing stop-for-GC on macOS seems to require that the signal
          * be delivered and then ignored in code. */
@@ -1937,11 +1937,13 @@ low_level_handle_now_handler(int signal, siginfo_t *info, void *void_context)
     } else if (old_ll_sigactions[signal].sa_handler != SIG_DFL) {
         (old_ll_sigactions[signal].sa_sigaction)(signal, info, context);
     } else {
+#ifdef LISP_FEATURE_SB_THREAD
         lose("Can't handle sig%d in non-lisp thread %p at @ %p",
              signal,
              // Casting to void* is a kludge - "technically" you can't assume that
              // pthread_t is integer-sized. It could be a struct.
              (void*)pthread_self(), (void*)os_context_pc(context));
+#endif
     }
     errno = saved_errno;
 }

-----------------------------------------------------------------------


hooks/post-receive
-- 
SBCL


_______________________________________________
Sbcl-commits mailing list
Sbcl-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sbcl-commits
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic