Skip to content

Commit

Permalink
poll() exits too early with EFAULT if 1st arg is NULL
Browse files Browse the repository at this point in the history
If poll() is used as a milli-second sleep, like in help.c, by passing a NULL
in the 1st and a 0 in the 2nd arg, it exits with EFAULT.

As per Paolo Bonzini, the original author, this is a bug and to be fixed
Like in this commit, which is not to exit if the 2nd arg is 0. It got fixed
In gnulib in the same manner the other day.

Signed-off-by: Joachim Schmitz <jojo@schmitz-digital.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Joachim Schmitz authored and Junio C Hamano committed Sep 17, 2012
1 parent 98c573a commit 32fde65
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion compat/poll/poll.c
Original file line number Diff line number Diff line change
Expand Up @@ -353,7 +353,7 @@ poll (struct pollfd *pfd, nfds_t nfd, int timeout)

/* EFAULT is not necessary to implement, but let's do it in the
simplest case. */
if (!pfd)
if (!pfd && nfd)
{
errno = EFAULT;
return -1;
Expand Down

0 comments on commit 32fde65

Please sign in to comment.