/**
* Process group
*/
-@@ -1211,16 +1215,38 @@
+@@ -1211,16 +1215,35 @@
#endif
#ifndef PHP_WIN32
+ fprintf(stderr, "FastCGI graceful shutdown, pid %d\n", getpid());
+#endif
+
-+ /* This will make FCGI shutdown itself later in the loop, however we should finish our request cleanly */
-+ fcgi_shutdown();
-+
-+ /* Whoever we also close the listeing socket (which PHP itself doesn't seem to do?!) */
++ /* Close the listeing socket so new processes can reuse the same port */
+ closesocket(fcgi_fd);
+ fcgi_fd = 0;
+}
PHP_INI_BEGIN()
STD_PHP_INI_ENTRY("cgi.rfc2616_headers", "0", PHP_INI_ALL, OnUpdateBool, rfc2616_headers, php_cgi_globals_struct, php_cgi_globals)
STD_PHP_INI_ENTRY("cgi.nph", "0", PHP_INI_ALL, OnUpdateBool, nph, php_cgi_globals_struct, php_cgi_globals)
-@@ -1328,7 +1354,6 @@
+@@ -1328,7 +1351,6 @@
int requests = 0;
int fastcgi = fcgi_is_fastcgi();
char *bindpath = NULL;
fcgi_request request;
int repeats = 1;
int benchmark = 0;
-@@ -1581,7 +1606,10 @@
+@@ -1581,7 +1603,10 @@
/* don't catch our signals */
sigaction(SIGTERM, &old_term, 0);
sigaction(SIGQUIT, &old_quit, 0);