Attribute warn_unused_result

Robert Connolly robert at linuxfromscratch.org
Fri Aug 25 10:56:56 PDT 2006


Wrapping the chdir call in an if statement is much better. It gives the 
program a contingency plan if the call fails, regardless of how unlikely that 
is. It's also really easy to implement.

Would it be better to use 'if != 0' rather than 'if == -1'? If chdir() fails 
it returns -1, but if libc fails to call chdir() I'm not sure about the 
return value, it might be something else. 0 is only returned on success. Not 
just for chdir(), but in a general sense.

robert

On Friday 25 August 2006 10:48, Alex Merry wrote:
> On Fri, Aug 25, 2006 at 01:00:33PM +0100, Alex Merry wrote:
> > diff -urw make-3.81.old/main.c make-3.81/main.c
> > --- make-3.81.old/main.c	2006-08-25 12:48:20.000000000 +0100
> > +++ make-3.81/main.c	2006-08-25 12:50:07.000000000 +0100
> > @@ -3066,7 +3066,8 @@
> >  	 directory.  Must wait until after remove_intermediates(), or unlinks
> >           of relative pathnames fail.  */
> >        if (directory_before_chdir != 0)
> > -	chdir (directory_before_chdir);
> > +        if (chdir (directory_before_chdir) != -1)
> > +          error (NILF, "Failed to return to original directory %s",
> > directory_before_chdir);
> >
> >        log_working_directory (0);
> >      }
>
> OK, that != should be == in the patch. Better one attached.
>
> Alex :-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.linuxfromscratch.org/pipermail/hlfs-dev/attachments/20060825/df249c17/attachment.sig>


More information about the hlfs-dev mailing list