From: Jim Meyering Date: Tue, 10 May 2005 07:35:43 +0000 (+0000) Subject: (abandon_move): Remove erroneous UNWRITABLE check. X-Git-Tag: CPPI-1_12~846 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=6a235271149b854be8ca8eb3d15a528e05957fbe;p=thirdparty%2Fcoreutils.git (abandon_move): Remove erroneous UNWRITABLE check. This makes `mv -i --reply=no f1 f2' work as expected (in not performing the move operation). But note that specifying `-i' after `--reply=no' does *not* work. Tiny patch from Vlada Macek. --- diff --git a/src/copy.c b/src/copy.c index 9f9856aa95..10fe904543 100644 --- a/src/copy.c +++ b/src/copy.c @@ -798,8 +798,8 @@ record_file (Hash_table *ht, char const *filename, /* When effecting a move (e.g., for mv(1)), and given the name DST_PATH of the destination and a corresponding stat buffer, DST_SB, return - true if the logical `move' operation should not proceed. - Return true if it may proceed. + true if the logical `move' operation should _not_ proceed. + Otherwise, return false. Depending on options specified in X, this code may issue an interactive prompt asking whether it's ok to overwrite DST_PATH. */ static bool @@ -808,8 +808,7 @@ abandon_move (const struct cp_options *x, struct stat const *dst_sb) { assert (x->move_mode); - return ((x->interactive == I_ALWAYS_NO - && UNWRITABLE (dst_path, dst_sb->st_mode)) + return (x->interactive == I_ALWAYS_NO || ((x->interactive == I_ASK_USER || (x->interactive == I_UNSPECIFIED && x->stdin_tty