Skip to content

Commit 5cd6ba6

Browse files
committed
si_syscall only when signal code is TRAP_CAP
1 parent 5bde999 commit 5cd6ba6

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

ext/pcntl/pcntl.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1072,10 +1072,12 @@ static void pcntl_siginfo_to_zval(int signo, siginfo_t *siginfo, zval *user_sigi
10721072
#ifdef SIGTRAP
10731073
case SIGTRAP:
10741074
# ifdef si_syscall
1075-
add_assoc_long_ex(user_siginfo, "syscall", sizeof("syscall")-1, (zend_long)siginfo->si_syscall);
1076-
# endif
1077-
# ifdef si_trapno
1078-
add_assoc_long_ex(user_siginfo, "trapno", sizeof("trapno")-1, (zend_long)siginfo->si_trapno);
1075+
if (siginfo->si_code == TRAP_CAP) {
1076+
add_assoc_long_ex(user_siginfo, "syscall", sizeof("syscall")-1, (zend_long)siginfo->si_syscall);
1077+
} else {
1078+
add_assoc_long_ex(user_siginfo, "trapno", sizeof("trapno")-1, (zend_long)siginfo->si_trapno);
1079+
}
1080+
10791081
# endif
10801082
break;
10811083

0 commit comments

Comments
 (0)