During incremental restore, before removing entities that have gone
away, tar performs a 'stat' call. However, this stat call is
dereferencing. If the previously existing entity is a symlink that does
not resolve correctly, this causes tar to print a warning, and not
remove the entity. I believe that this stat should not dereference
symlinks. Below is a patch to fix this problem.
Let me know if you want a script to demonstrate this problem, and I can
try to come up with one.
--- tar-1.15.1/src/incremen.c~ 2005-08-23 21:27:17.000000000 -0700
+++ tar-1.15.1/src/incremen.c 2005-08-23 21:27:36.000000000 -0700
@@ -518,7 +518,7 @@
struct stat st;
char *p = new_name (directory_name, cur);
- if (deref_stat (true, p, &st))
+ if (deref_stat (false, p, &st))
{
stat_diag (p);
WARN((0, 0, _("%s: Not purging directory: unable to stat"),
_______________________________________________
Bug-tar mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-tar