X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=tests%2Fremfiles08c.at;h=b52b0328bbcd2a495923ee7d512177383193e5f2;hb=4aa85f09e755fc827cd5ab6225f20c83cd42245d;hp=a220f4ca494a9f0d29079055cd6ca5743f5b76f7;hpb=eb3ba7cb06fdd0f8627b8f117d8453e297e18b64;p=debian%2Ftar diff --git a/tests/remfiles08c.at b/tests/remfiles08c.at index a220f4ca..b52b0328 100644 --- a/tests/remfiles08c.at +++ b/tests/remfiles08c.at @@ -1,6 +1,6 @@ # Process this file with autom4te to create testsuite. -*- Autotest -*- # Test suite for GNU tar. -# Copyright 2013 Free Software Foundation, Inc. +# Copyright 2013-2014 Free Software Foundation, Inc. # # GNU tar is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -15,49 +15,48 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -# Description: ensure tar correctly respects -C option when deleting -# files due to the --remove-files option. +# Description: If tar 1.26 was called with the --remove-files option and told +# to archive (and thus delete) two subdirectories where the second was +# specified relative to the first, it would be unable to delete the +# second directory (and its contents), since the relative path would no +# longer be valid once the first directory was deleted. # -# This case checks the use of an absolute -C option followed by a relative -C, +# This case checks for successful deletion of all archived items # in --append mode. # -AT_SETUP([remove-files with -C:abs,rel in -r mode]) +AT_SETUP([remove-files deleting two subdirs in -r mode]) AT_KEYWORDS([create append remove-files remfiles08 remfiles08c]) AT_TAR_CHECK([ AT_SORT_PREREQ mkdir foo mkdir bar -echo file > file -echo foo/file > foo/file -echo bar/file > bar/file -DIR=`pwd` -tar -cf foo.tar -C $DIR/foo file -C ../bar file +echo foo/foo_file > foo/foo_file +echo bar/bar_file > bar/bar_file +tar -cf foo.tar -C foo . -C ../bar . decho A find . | sort decho B -tar -rvf foo.tar --remove-files -C $DIR/foo file -C ../bar file +tar -rvf foo.tar --remove-files -C foo . -C ../bar . decho C -find . | sort +find . ], [0], [A . ./bar -./bar/file -./file +./bar/bar_file ./foo ./foo.tar -./foo/file +./foo/foo_file B -file -file +./ +./foo_file +./ +./bar_file C . -./bar -./file -./foo ./foo.tar ], [A