From e66948c3b59045bf8b9f6bd1e0dcc3bb93488cab Mon Sep 17 00:00:00 2001 From: =?utf8?q?P=C3=A1draig=20Brady?= Date: Sat, 18 Dec 2010 02:50:33 +0000 Subject: [PATCH] cp: ensure backups are created when -T specified * src/cp.c (do_copy): When -T is specified, initialize the NEW_DST and SB variables, which are checked when running: cp -T --force --backup file file * tests/cp/backup-1: Add the -T case --- src/cp.c | 2 ++ tests/cp/backup-1 | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/cp.c b/src/cp.c index 5b14f3a..3d00b5f 100644 --- a/src/cp.c +++ b/src/cp.c @@ -604,6 +604,8 @@ do_copy (int n_files, char **file, const char *target_directory, error (0, 0, _("extra operand %s"), quote (file[2])); usage (EXIT_FAILURE); } + /* Update NEW_DST and SB, which may be checked below. */ + ignore_value (target_directory_operand (file[n_files -1], &sb, &new_dst)); } else if (!target_directory) { diff --git a/tests/cp/backup-1 b/tests/cp/backup-1 index 94c1f2a..fb1c00b 100755 --- a/tests/cp/backup-1 +++ b/tests/cp/backup-1 @@ -30,8 +30,8 @@ echo test > $file || fail=1 # Specify both version control and suffix so the environment variables # (possibly set by the user running these tests) aren't used. -cp --force --backup=simple --suffix=$suffix $file $file \ - || fail=1 +cp --force --backup=simple --suffix=$suffix $file $file || fail=1 +cp -T --force --backup=simple --suffix=$suffix $file $file || fail=1 test -f $file || fail=1 test -f $file_backup || fail=1 -- 2.7.4