summaryrefslogtreecommitdiff
path: root/Zend/zend_execute_API.c
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2019-07-01 12:47:49 +0200
committerNikita Popov <nikita.ppv@gmail.com>2019-07-01 12:47:49 +0200
commit22ce77f500f2a66e6f1e14ce7a9dbd358db40de1 (patch)
treeda413ce9bd83e84dfade9df9a0bf460e2accac29 /Zend/zend_execute_API.c
parent8fc58a1a1d32dd288bf4b9e09f9302a99d7b35fe (diff)
parent01e1e1991d3715c7eaddb27eb7fe88c92c39d074 (diff)
downloadphp-git-22ce77f500f2a66e6f1e14ce7a9dbd358db40de1.tar.gz
Merge branch 'PHP-7.4'
Diffstat (limited to 'Zend/zend_execute_API.c')
-rw-r--r--Zend/zend_execute_API.c37
1 files changed, 16 insertions, 21 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c
index 75aaa0137f..1bd462712d 100644
--- a/Zend/zend_execute_API.c
+++ b/Zend/zend_execute_API.c
@@ -1214,8 +1214,7 @@ static void zend_set_timeout_ex(zend_long seconds, int reset_signals) /* {{{ */
zend_error_noreturn(E_ERROR, "Could not queue new timer");
return;
}
-#else
-# ifdef HAVE_SETITIMER
+#elif defined(HAVE_SETITIMER)
{
struct itimerval t_r; /* timeout requested */
int signo;
@@ -1224,39 +1223,38 @@ static void zend_set_timeout_ex(zend_long seconds, int reset_signals) /* {{{ */
t_r.it_value.tv_sec = seconds;
t_r.it_value.tv_usec = t_r.it_interval.tv_sec = t_r.it_interval.tv_usec = 0;
-# ifdef __CYGWIN__
+# ifdef __CYGWIN__
setitimer(ITIMER_REAL, &t_r, NULL);
}
signo = SIGALRM;
-# else
+# else
setitimer(ITIMER_PROF, &t_r, NULL);
}
signo = SIGPROF;
-# endif
+# endif
if (reset_signals) {
-# ifdef ZEND_SIGNALS
+# ifdef ZEND_SIGNALS
zend_signal(signo, zend_timeout_handler);
-# else
+# else
sigset_t sigset;
-# ifdef HAVE_SIGACTION
+# ifdef HAVE_SIGACTION
struct sigaction act;
act.sa_handler = zend_timeout_handler;
sigemptyset(&act.sa_mask);
act.sa_flags = SA_RESETHAND | SA_NODEFER;
sigaction(signo, &act, NULL);
-# else
+# else
signal(signo, zend_timeout_handler);
-# endif /* HAVE_SIGACTION */
+# endif /* HAVE_SIGACTION */
sigemptyset(&sigset);
sigaddset(&sigset, signo);
sigprocmask(SIG_UNBLOCK, &sigset, NULL);
-# endif /* ZEND_SIGNALS */
+# endif /* ZEND_SIGNALS */
}
}
-# endif /* HAVE_SETITIMER */
-#endif
+#endif /* HAVE_SETITIMER */
}
/* }}} */
@@ -1281,23 +1279,20 @@ void zend_unset_timeout(void) /* {{{ */
}
tq_timer = NULL;
}
- EG(timed_out) = 0;
-#else
-# ifdef HAVE_SETITIMER
+#elif defined(HAVE_SETITIMER)
if (EG(timeout_seconds)) {
struct itimerval no_timeout;
no_timeout.it_value.tv_sec = no_timeout.it_value.tv_usec = no_timeout.it_interval.tv_sec = no_timeout.it_interval.tv_usec = 0;
-#ifdef __CYGWIN__
+# ifdef __CYGWIN__
setitimer(ITIMER_REAL, &no_timeout, NULL);
-#else
+# else
setitimer(ITIMER_PROF, &no_timeout, NULL);
-#endif
+# endif
}
-# endif
- EG(timed_out) = 0;
#endif
+ EG(timed_out) = 0;
}
/* }}} */