From: Anatol Belski Date: Thu, 2 Mar 2017 15:41:43 +0000 (+0100) Subject: Merge branch 'PHP-7.0' into PHP-7.1 X-Git-Tag: php-7.1.4RC1~57 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=494fc16184ba2899f799d13c9fc4e06e272133a4;p=php Merge branch 'PHP-7.0' into PHP-7.1 * PHP-7.0: do not try to handle signals, when globals are inconsistent --- 494fc16184ba2899f799d13c9fc4e06e272133a4 diff --cc Zend/zend_signal.c index 605187aed2,ba550a146a..9a21831da2 --- a/Zend/zend_signal.c +++ b/Zend/zend_signal.c @@@ -172,9 -165,16 +177,16 @@@ ZEND_API void zend_signal_handler_unblo static void zend_signal_handler(int signo, siginfo_t *siginfo, void *context) { int errno_save = errno; - struct sigaction sa = {{0}}; + struct sigaction sa; sigset_t sigset; - zend_signal_entry_t p_sig = SIGG(handlers)[signo-1]; + zend_signal_entry_t p_sig; + #ifdef ZTS + if (NULL == TSRMG_BULK_STATIC(zend_signal_globals_id, zend_signal_globals_t *)) { + p_sig.flags = 0; + p_sig.handler = SIG_DFL; + } else + #endif + p_sig = SIGG(handlers)[signo-1]; if (p_sig.handler == SIG_DFL) { /* raise default handler */ if (sigaction(signo, NULL, &sa) == 0) {