diff options
| -rw-r--r-- | fcgiwrap.c | 7 | 
1 files changed, 5 insertions, 2 deletions
@@ -10,6 +10,7 @@  #include <errno.h>  #include <string.h>  #include <sys/stat.h> +#include <limits.h>  #define FCGI_BUF_SIZE 4096 @@ -28,6 +29,8 @@ static int write_all(int fd, char *buf, size_t size)  	return size;  } +#define MAX_VA_SENTINEL INT_MIN +  static int max_va(int p1, ...)  {  	va_list va; @@ -39,7 +42,7 @@ static int max_va(int p1, ...)  		p = va_arg(va, int);  		if (p > max)  			max = p; -	} while (p >= 0); +	} while (p != MAX_VA_SENTINEL);  	va_end(va);  	return max; @@ -92,7 +95,7 @@ static void fcgi_pass(struct fcgi_context *fc)  	char buf[FCGI_BUF_SIZE];  	ssize_t nread;  	fd_set rset; -	int maxfd = max_va(fc->fd_stdout, fc->fd_stderr, -1); +	int maxfd = max_va(fc->fd_stdout, fc->fd_stderr, MAX_VA_SENTINEL);  	int nready;  	const char *err;  | 
