summaryrefslogtreecommitdiffstats
path: root/server
diff options
context:
space:
mode:
authorBradley Nicholes <bnicholes@apache.org>2003-03-26 20:21:32 +0100
committerBradley Nicholes <bnicholes@apache.org>2003-03-26 20:21:32 +0100
commitcb1fce485b4bc5f62c2bda40e4391c52b78710cb (patch)
tree1b997b1854ef18adce6f9653a1275f5da7aa983b /server
parentap_get_mime_headers_core: allocate space for the trailing null when there (diff)
downloadapache2-cb1fce485b4bc5f62c2bda40e4391c52b78710cb.tar.xz
apache2-cb1fce485b4bc5f62c2bda40e4391c52b78710cb.zip
Need to report a select() error vs a timeout. Also avoid hogging the CPU on
an error. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99065 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'server')
-rw-r--r--server/mpm/netware/mpm_netware.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/server/mpm/netware/mpm_netware.c b/server/mpm/netware/mpm_netware.c
index db5cc5d9a6..3353d4c421 100644
--- a/server/mpm/netware/mpm_netware.c
+++ b/server/mpm/netware/mpm_netware.c
@@ -418,8 +418,14 @@ void worker_main(void *arg)
memcpy(&main_fds, &listenfds, sizeof(fd_set));
srv = select(listenmaxfd + 1, &main_fds, NULL, NULL, &tv);
- if (srv <= 0)
+ if (srv <= 0) {
+ if (srv < 0) {
+ ap_log_error(APLOG_MARK, APLOG_NOTICE, apr_get_netos_error(), ap_server_conf,
+ "select() failed on listen socket");
+ apr_thread_yield();
+ }
continue;
+ }
/* remember the last_lr we searched last time around so that
we don't end up starving any particular listening socket */