mirror of
https://github.com/moparisthebest/curl
synced 2024-12-22 08:08:50 -05:00
Don't lock up at start when there aren't any free file descriptors.
This commit is contained in:
parent
88377e5b61
commit
050e82e088
12
src/main.c
12
src/main.c
@ -4279,8 +4279,11 @@ quit_curl:
|
||||
return res;
|
||||
}
|
||||
|
||||
static void checkfds(void);
|
||||
|
||||
/* Ensure that file descriptors 0, 1 and 2 (stdin, stdout, stderr) are
|
||||
open before starting to run. Otherwise, the first three network
|
||||
sockets opened by curl could be used for input sources, downloaded data
|
||||
or error logs as they will effectively be stdin, stdout and/or stderr.
|
||||
*/
|
||||
static void checkfds(void)
|
||||
{
|
||||
#ifdef HAVE_PIPE
|
||||
@ -4291,8 +4294,9 @@ static void checkfds(void)
|
||||
fd[1] == STDIN_FILENO ||
|
||||
fd[1] == STDOUT_FILENO ||
|
||||
fd[1] == STDERR_FILENO )
|
||||
pipe(fd);
|
||||
|
||||
if (pipe(fd) < 0)
|
||||
return; /* Out of handles. This isn't really a big problem now, but
|
||||
will be when we try to create a socket later. */
|
||||
close(fd[0]);
|
||||
close(fd[1]);
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user