mv: accept but ignore -v

function                                             old     new   delta
mv_longopts                                           36      46     +10

Signed-off-by: Simon B <sburnet@hotmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
1_21_stable
Simon B 2012-05-06 18:08:24 +02:00 committed by Denys Vlasenko
parent 3698ed1ca1
commit f1f8fcaad5
1 changed files with 11 additions and 8 deletions

View File

@ -33,12 +33,13 @@ static const char mv_longopts[] ALIGN1 =
"interactive\0" No_argument "i" "interactive\0" No_argument "i"
"force\0" No_argument "f" "force\0" No_argument "f"
"no-clobber\0" No_argument "n" "no-clobber\0" No_argument "n"
"verbose\0" No_argument "v"
; ;
#endif #endif
#define OPT_FILEUTILS_FORCE 1 #define OPT_FORCE (1 << 0)
#define OPT_FILEUTILS_INTERACTIVE 2 #define OPT_INTERACTIVE (1 << 1)
#define OPT_FILEUTILS_NOCLOBBER 4 #define OPT_NOCLOBBER (1 << 2)
int mv_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; int mv_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
int mv_main(int argc, char **argv) int mv_main(int argc, char **argv)
@ -56,9 +57,11 @@ int mv_main(int argc, char **argv)
#endif #endif
/* Need at least two arguments. /* Need at least two arguments.
* If more than one of -f, -i, -n is specified , only the final one * If more than one of -f, -i, -n is specified , only the final one
* takes effect (it unsets previous options). */ * takes effect (it unsets previous options).
* -v is accepted but ignored.
*/
opt_complementary = "-2:f-in:i-fn:n-fi"; opt_complementary = "-2:f-in:i-fn:n-fi";
flags = getopt32(argv, "fin"); flags = getopt32(argv, "finv");
argc -= optind; argc -= optind;
argv += optind; argv += optind;
last = argv[argc - 1]; last = argv[argc - 1];
@ -84,11 +87,11 @@ int mv_main(int argc, char **argv)
DO_MOVE: DO_MOVE:
if (dest_exists) { if (dest_exists) {
if (flags & OPT_FILEUTILS_NOCLOBBER) if (flags & OPT_NOCLOBBER)
goto RET_0; goto RET_0;
if (!(flags & OPT_FILEUTILS_FORCE) if (!(flags & OPT_FORCE)
&& ((access(dest, W_OK) < 0 && isatty(0)) && ((access(dest, W_OK) < 0 && isatty(0))
|| (flags & OPT_FILEUTILS_INTERACTIVE)) || (flags & OPT_INTERACTIVE))
) { ) {
if (fprintf(stderr, "mv: overwrite '%s'? ", dest) < 0) { if (fprintf(stderr, "mv: overwrite '%s'? ", dest) < 0) {
goto RET_1; /* Ouch! fprintf failed! */ goto RET_1; /* Ouch! fprintf failed! */