Closed
Description
Description
I'm embedding PHP in a Go program. When this program receives SIGINT
, PHP crashes with the following stack trace (extracted using GDB):
Thread 1 "internal" received signal SIGSEGV, Segmentation fault.
0x00000000007b907c in zend_signal_handler_defer (signo=2, siginfo=0xffffeb3e5600, context=0xffffeb3e5680) at /go/php-src/Zend/zend_signal.c:98
98 if (EXPECTED(SIGG(active))) {
This may be related to #8029, #8789, #9337.
If anyone has an idea of what's happening, I can give them access to a private repository with a simple way to reproduce the crash. I reproduced the issue on Debian and macOS.
Go documentation about signal handling and C code: https://pkg.go.dev/os/signal#hdr-Go_programs_that_use_cgo_or_SWIG
PHP Version
PHP 8.2-dev
Operating System
Debian, macOS