From e2aba1521a48a2be42e46e741b0eb7f8b67cae39 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Fri, 22 May 2009 01:31:56 +0200 Subject: core-util: fall back to sysconf(_SC_OPEN_MAX) to find maximum file descriptor --- src/pulsecore/core-util.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/pulsecore/core-util.c b/src/pulsecore/core-util.c index 4658eb52..d4956fb8 100644 --- a/src/pulsecore/core-util.c +++ b/src/pulsecore/core-util.c @@ -2235,7 +2235,7 @@ int pa_close_all(int except_fd, ...) { int pa_close_allv(const int except_fds[]) { struct rlimit rl; - int fd; + int maxfd, fd; int saved_errno; #ifdef __linux__ @@ -2302,10 +2302,12 @@ int pa_close_allv(const int except_fds[]) { #endif - if (getrlimit(RLIMIT_NOFILE, &rl) < 0) - return -1; + if (getrlimit(RLIMIT_NOFILE, &rl) >= 0) + maxfd = (int) rl.rlim_max; + else + maxfd = sysconf(_SC_OPEN_MAX); - for (fd = 3; fd < (int) rl.rlim_max; fd++) { + for (fd = 3; fd < maxfd; fd++) { int i; pa_bool_t found; -- cgit