diff options
author | lev <lev@FreeBSD.org> | 2003-10-23 12:14:17 +0000 |
---|---|---|
committer | lev <lev@FreeBSD.org> | 2003-10-23 12:14:17 +0000 |
commit | e8c8d32040c6edfb08df1eeeba13fd636a9564e9 (patch) | |
tree | dcc224f740223d20d16df7382aadf70eb26d7425 /russian/apache13 | |
parent | aca113375144868ee0c20b4486fb4e62efa07982 (diff) | |
download | FreeBSD-ports-e8c8d32040c6edfb08df1eeeba13fd636a9564e9.zip FreeBSD-ports-e8c8d32040c6edfb08df1eeeba13fd636a9564e9.tar.gz |
Fix problem with zombies.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=21737
Diffstat (limited to 'russian/apache13')
-rw-r--r-- | russian/apache13/Makefile | 1 | ||||
-rw-r--r-- | russian/apache13/files/patch-src::main::alloc.c | 25 |
2 files changed, 26 insertions, 0 deletions
diff --git a/russian/apache13/Makefile b/russian/apache13/Makefile index 8d31c43..f57eaab 100644 --- a/russian/apache13/Makefile +++ b/russian/apache13/Makefile @@ -7,6 +7,7 @@ PORTNAME= apache PORTVERSION= ${APACHE_VERSION}+${RA_VERSION} +PORTREVISION= 1 CATEGORIES= russian www MASTER_SITES= ${MASTER_SITE_APACHE_HTTPD} DISTNAME= ${PORTNAME}_${APACHE_VERSION} diff --git a/russian/apache13/files/patch-src::main::alloc.c b/russian/apache13/files/patch-src::main::alloc.c new file mode 100644 index 0000000..08ab0e3 --- /dev/null +++ b/russian/apache13/files/patch-src::main::alloc.c @@ -0,0 +1,25 @@ +Index: src/main/alloc.c +=================================================================== +RCS file: /home/cvs/apache-1.3/src/main/alloc.c,v +retrieving revision 1.145 +retrieving revision 1.146 +diff -u -r1.145 -r1.146 +--- src/main/alloc.c 20 Jun 2003 15:05:40 -0000 1.145 ++++ src/main/alloc.c 2 Sep 2003 18:17:05 -0000 1.146 +@@ -2859,12 +2859,10 @@ + if ((p->kill_how == kill_after_timeout) + || (p->kill_how == kill_only_once)) { + /* Subprocess may be dead already. Only need the timeout if not. */ +- if (ap_os_kill(p->pid, SIGTERM) == -1) { +- p->kill_how = kill_never; +- } +- else { +- need_timeout = 1; +- } ++ if ( (ap_os_kill(p->pid, SIGTERM) == -1) && (errno == ESRCH) ) ++ p->kill_how = kill_never; ++ else ++ need_timeout = 1; + } + else if (p->kill_how == kill_always) { + kill(p->pid, SIGKILL); |