]> Dogcows Code - chaz/tar/commit
Fix --remove-files.
authorSergey Poznyakoff <gray@gnu.org.ua>
Wed, 17 Mar 2010 09:52:40 +0000 (11:52 +0200)
committerSergey Poznyakoff <gray@gnu.org.ua>
Wed, 17 Mar 2010 09:52:40 +0000 (11:52 +0200)
commitc1d3d134939d48e921b981f400808663f4e74001
treed3b6bf0d13e3c9868f28d9bf41eadf6a30d01934
parent67b4f3519d838c6f16f5b6b63c0b9b8669fb3dd9
Fix --remove-files.

Tar --remove-files relied on canonicalize_file_name,
which replaces symlinks in file name components with
the directories they point to. Due to this, tar
effectively ignored existence of symbolic links and
was unable to remove a directory that contained any
(Alexander Kozlov <akozlov@nada.kth.se>, 2010-03-15).

* gnulib.modules: Remove canonicalize.
* src/misc.c (normalize_filename): Rewrite
from scratch. The function operates only on
its input string, it makes no attempt to test
components for existence or to resolve symbolic
links.
* tests/Makefile.am (TESTSUITE_AT): Add remfiles03.at.
* tests/testsuite.at: Likewise.
* tests/remfiles03.at: New test case.
* NEWS: Update.
NEWS
gnulib.modules
src/misc.c
tests/Makefile.am
tests/remfiles03.at [new file with mode: 0644]
tests/testsuite.at
This page took 0.020552 seconds and 4 git commands to generate.