summaryrefslogtreecommitdiff
path: root/Zend/zend_signal.c
diff options
context:
space:
mode:
authorXinchen Hui <laruence@php.net>2015-03-05 18:16:39 +0800
committerXinchen Hui <laruence@php.net>2015-03-05 18:39:50 +0800
commitf039225597b51f2ee02a050391d497ae68d63b39 (patch)
tree9cb4427f51218a5d5e8ffaa8010f85edb039063a /Zend/zend_signal.c
parent837eeefee9e01156b364a4b0e9cff8d9f0a1a1d5 (diff)
downloadphp-git-f039225597b51f2ee02a050391d497ae68d63b39.tar.gz
Fixed bug #69174 (leaks when unused inner class use traits precedence)
Diffstat (limited to 'Zend/zend_signal.c')
-rw-r--r--Zend/zend_signal.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/Zend/zend_signal.c b/Zend/zend_signal.c
index 6105fb1119..3e0ce64213 100644
--- a/Zend/zend_signal.c
+++ b/Zend/zend_signal.c
@@ -78,8 +78,8 @@ void zend_signal_handler_defer(int signo, siginfo_t *siginfo, void *context)
if (SIGG(active)) {
if (SIGG(depth) == 0) { /* try to handle signal */
- if (SIGG(blocked) != -1) { /* inverse */
- SIGG(blocked) = -1; /* signal is not blocked */
+ if (SIGG(blocked) != 0) { /* inverse */
+ SIGG(blocked) = 0; /* signal is not blocked */
}
if (SIGG(running) == 0) {
SIGG(running) = 1;
@@ -99,7 +99,7 @@ void zend_signal_handler_defer(int signo, siginfo_t *siginfo, void *context)
SIGG(running) = 0;
}
} else { /* delay signal handling */
- SIGG(blocked) = 0; /* signal is blocked */
+ SIGG(blocked) = 1; /* signal is blocked */
if ((queue = SIGG(pavail))) { /* if none available it's simply forgotton */
SIGG(pavail) = queue->next;
@@ -314,7 +314,7 @@ void zend_signal_deactivate(TSRMLS_D)
SIGNAL_BEGIN_CRITICAL();
SIGG(active) = 0;
SIGG(running) = 0;
- SIGG(blocked) = -1;
+ SIGG(blocked) = 0;
SIGG(depth) = 0;
SIGNAL_END_CRITICAL();
}