GNU bug report logs - #70144
system* affects signal handlers

Previous Next

Package: guile;

Reported by: Christopher Baines <mail <at> cbaines.net>

Date: Tue, 2 Apr 2024 14:28:02 UTC

Severity: normal

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Christopher Baines <mail <at> cbaines.net>
To: 70144 <at> debbugs.gnu.org
Subject: bug#70144: system* affects signal handlers
Date: Tue, 02 Apr 2024 15:22:57 +0100
[Message part 1 (text/plain, inline)]
I've encountered a situation where signal handlers don't seem to
run. With the following program, sending it SIGINT won't trigger the
handler, however if you remove the system* call, then the handler will
run.

  (use-modules (ice-9 threads))

  (call-with-new-thread
   (lambda ()
     ;; Remove the following system* call to fix the handler
     (system* "echo" "foo")))

  (sigaction SIGINT
    (lambda (sig)
      (peek "SIGINT handler")
      (exit 1)))

  (for-each
   (lambda _
     (sleep 1))
   (iota 30))

  (display "normal exit\n")
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 1 year and 17 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.