Re: [dev] [PATCH 1/1] remove useless dup()
On Wed, Jul 08, 2015 at 09:30:47PM +0200, Markus Wichmann wrote:
> On Wed, Jul 08, 2015 at 12:00:35PM +0200, Roberto E. Vargas Caballero wrote:
> >
> > > We are ignoring return value of dup(), so just remove it.
> >
> >
> > From dup(3):
> >
> > The dup() system call creates a copy of the file descriptor oldfd,
> > using the lowest-numbered unused descriptor for the new descriptor.
> >
> >
>
> Yes, but can't dup() fail? Shouldn't we at least check or that?
No, it cannot. From dup(2):
ERRORS
EBADF
oldfd isn't an open file descriptor, or newfd is out of
the allowed range for file descriptors.
EBUSY
(Linux only) This may be returned by dup2() or dup3()
during a race condition with open(2) and dup().
EINTR
The dup2() or dup3() call was interrupted by a signal;
see signal(7).
EINVAL
(dup3()) flags contain an invalid value. Or, oldfd was
equal to newfd.
EMFILE
The process already has the maximum number of file
descriptors open and tried to open a new one.
Any of them apply here.
I'm beginning to think that maybe it is a good idea to change the
call to dup to dup2, not due to the lateral effect or to the error
handling, due to we have calls to dup2 in the same function and we
will also remove a line of code, so I will accept such patch.
Regards,
Received on Thu Jul 09 2015 - 20:14:47 CEST
This archive was generated by hypermail 2.3.0
: Thu Jul 09 2015 - 20:24:09 CEST