cvs commit: src/usr.bin/tar write.c

Rong-en Fan grafan at gmail.com
Thu May 3 03:31:12 UTC 2007


On 3/15/07, Colin Percival <cperciva at freebsd.org> wrote:
> cperciva    2007-03-15 10:11:38 UTC
>
>   FreeBSD src repository
>
>   Modified files:
>     usr.bin/tar          write.c
>   Log:
>   Don't consider an lstat(2) failure to be an error (in the sense of
>   affecting the return value from bsdtar), since (a) it usually occurs
>   due to a perfectly innocent (and unavoidable) race condition where a
>   user deletes a file in the window between bsdtar reading a directory
>   and attempting to read the file; and (b) aside from printing a warning
>   message, bsdtar behaves exactly as if the file had been deleted prior
>   to bsdtar reading its parent directory.

This commit makes 'make package' successfully even if the plist is
wrong, i.e. it contains ``ghost'' files. Basically,

$ tar zcvf a.tgz /aaa
tar: /aaa: Cannot stat: No such file or directory

It returns 0, so make package will be considered successful.
That's why I only get chinese/CJK build failure on 5.x (this is
merged to 6.x).

I'm CC'ing kientzle@ and portmgr@ (since it affects our package
building).

Regards,
Rong-En Fan.

>
>   Reviewed by:    kientzle
>   MFC after:      6 days
>
>   Revision  Changes    Path
>   1.57      +0 -1      src/usr.bin/tar/write.c
> _______________________________________________
> cvs-src at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/cvs-src
> To unsubscribe, send any mail to "cvs-src-unsubscribe at freebsd.org"
>


More information about the cvs-src mailing list