From: Jim Meyering Date: Sat, 23 Nov 1996 04:15:35 +0000 (+0000) Subject: (copy): With -i and not -f, prompt for any type of X-Git-Tag: TEXTUTILS-1_19q~106 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=94d1ea4fa98c40599b959e2f606b0468e172f406;p=platform%2Fupstream%2Fcoreutils.git (copy): With -i and not -f, prompt for any type of (non-directory) source file before overwriting an existing target. Reported by Mark A. Thomas. --- diff --git a/src/cp.c b/src/cp.c index 659369e..3910f9f 100644 --- a/src/cp.c +++ b/src/cp.c @@ -661,21 +661,22 @@ copy (const char *src_path, const char *dst_path, int new_dst, dev_t device, return 0; } - if (S_ISREG (src_type) && !flag_force) + if (!S_ISDIR (src_type) && !flag_force && flag_interactive) { - if (flag_interactive) + if (euidaccess (dst_path, W_OK) != 0) { - if (euidaccess (dst_path, W_OK) != 0) - fprintf (stderr, - _("%s: overwrite `%s', overriding mode %04o? "), - program_name, dst_path, - (unsigned int) (dst_sb.st_mode & 07777)); - else - fprintf (stderr, _("%s: overwrite `%s'? "), - program_name, dst_path); - if (!yesno ()) - return 0; + fprintf (stderr, + _("%s: overwrite `%s', overriding mode %04o? "), + program_name, dst_path, + (unsigned int) (dst_sb.st_mode & 07777)); } + else + { + fprintf (stderr, _("%s: overwrite `%s'? "), + program_name, dst_path); + } + if (!yesno ()) + return 0; } if (backup_type != none && !S_ISDIR (dst_sb.st_mode))