]> git.gag.com Git - debian/tar/commit
Work around unlinkat bug on FreeBSD and GNU/Hurd
authorSergey Poznyakoff <gray@gnu.org>
Wed, 11 Nov 2015 11:01:45 +0000 (13:01 +0200)
committerSergey Poznyakoff <gray@gnu.org>
Wed, 11 Nov 2015 11:01:45 +0000 (13:01 +0200)
commite6fcc73efa7463fe20c30a20603d3a3f6abfd4e5
tree4112f3def733d31ea127f7430f794a4cfef11dfb
parent6167c23e22236d7872295089ad4e197697fadd97
Work around unlinkat bug on FreeBSD and GNU/Hurd

* src/unlink.c (dunlink_insert): New function.
(flush_deferred_unlinks): Skip cwds and nonempty directories
at the first pass.  If force is requested, run a second pass
removing them.
(queue_deferred_unlink): Make sure current working directory
entries are sorted in descending order by the value of dir_idx.
This makes sure they will be removed in right order, which works
around unlinkat bug on FreeBSD and GNU/Hurd.
* tests/remfiles08b.at: Remove expected failure.
* tests/remfiles09b.at: Likewise.
src/unlink.c
tests/remfiles08b.at
tests/remfiles09b.at