Use return instead of exit, use == instead of & ==, left justify labels,
adjustment of whitespace.
This commit is contained in:
parent
ced9705c42
commit
96099d51b6
@ -41,7 +41,6 @@ static const struct option mv_long_options[] = {
|
|||||||
{ 0, 0, 0, 0 }
|
{ 0, 0, 0, 0 }
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char mv_getopt_short_option[] = "fi";
|
|
||||||
#define OPT_FILEUTILS_FORCE 1
|
#define OPT_FILEUTILS_FORCE 1
|
||||||
#define OPT_FILEUTILS_INTERACTIVE 2
|
#define OPT_FILEUTILS_INTERACTIVE 2
|
||||||
|
|
||||||
@ -49,21 +48,19 @@ static const char fmt[] = "cannot overwrite %sdirectory with %sdirectory";
|
|||||||
|
|
||||||
extern int mv_main(int argc, char **argv)
|
extern int mv_main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
struct stat source_stat;
|
|
||||||
struct stat dest_stat;
|
struct stat dest_stat;
|
||||||
const char *last;
|
const char *last;
|
||||||
const char *dest;
|
const char *dest;
|
||||||
int dest_exists;
|
|
||||||
int source_exists;
|
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
int dest_exists;
|
||||||
int status = 0;
|
int status = 0;
|
||||||
|
|
||||||
bb_applet_long_options = mv_long_options;
|
bb_applet_long_options = mv_long_options;
|
||||||
bb_opt_complementaly = "f-i:i-f";
|
bb_opt_complementaly = "f-i:i-f";
|
||||||
flags = bb_getopt_ulflags(argc, argv, mv_getopt_short_option);
|
flags = bb_getopt_ulflags(argc, argv, "fi");
|
||||||
|
if (optind + 2 > argc) {
|
||||||
if (optind + 2 > argc)
|
|
||||||
bb_show_usage();
|
bb_show_usage();
|
||||||
|
}
|
||||||
|
|
||||||
last = argv[argc - 1];
|
last = argv[argc - 1];
|
||||||
argv += optind;
|
argv += optind;
|
||||||
@ -86,30 +83,34 @@ extern int mv_main(int argc, char **argv)
|
|||||||
goto RET_1;
|
goto RET_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
DO_MOVE:
|
DO_MOVE:
|
||||||
|
|
||||||
if (dest_exists && !(flags & OPT_FILEUTILS_FORCE) &&
|
if (dest_exists && !(flags & OPT_FILEUTILS_FORCE) &&
|
||||||
((access(dest, W_OK) < 0 && isatty(0)) ||
|
((access(dest, W_OK) < 0 && isatty(0)) ||
|
||||||
(flags & OPT_FILEUTILS_INTERACTIVE))) {
|
(flags & OPT_FILEUTILS_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! */
|
||||||
}
|
}
|
||||||
if (!bb_ask_confirmation())
|
if (!bb_ask_confirmation()) {
|
||||||
goto RET_0;
|
goto RET_0;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if (rename(*argv, dest) < 0) {
|
if (rename(*argv, dest) < 0) {
|
||||||
|
struct stat source_stat;
|
||||||
|
int source_exists;
|
||||||
|
|
||||||
if (errno != EXDEV) {
|
if (errno != EXDEV) {
|
||||||
bb_perror_msg("unable to rename `%s'", *argv);
|
bb_perror_msg("unable to rename `%s'", *argv);
|
||||||
} else if ((source_exists = cp_mv_stat(*argv, &source_stat)) >= 0) {
|
}
|
||||||
|
else if ((source_exists = cp_mv_stat(*argv, &source_stat)) >= 0) {
|
||||||
if (dest_exists) {
|
if (dest_exists) {
|
||||||
if (dest_exists & 2) {
|
if (dest_exists == 3) {
|
||||||
if (!(source_exists & 2)) {
|
if (source_exists != 3) {
|
||||||
bb_error_msg(fmt, "", "non-");
|
bb_error_msg(fmt, "", "non-");
|
||||||
goto RET_1;
|
goto RET_1;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (source_exists & 2) {
|
if (source_exists == 3) {
|
||||||
bb_error_msg(fmt, "non-", "");
|
bb_error_msg(fmt, "non-", "");
|
||||||
goto RET_1;
|
goto RET_1;
|
||||||
}
|
}
|
||||||
@ -118,26 +119,21 @@ extern int mv_main(int argc, char **argv)
|
|||||||
bb_perror_msg("cannot remove `%s'", dest);
|
bb_perror_msg("cannot remove `%s'", dest);
|
||||||
goto RET_1;
|
goto RET_1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((copy_file(*argv, dest,
|
if ((copy_file(*argv, dest,
|
||||||
FILEUTILS_RECUR | FILEUTILS_PRESERVE_STATUS) >= 0)
|
FILEUTILS_RECUR | FILEUTILS_PRESERVE_STATUS) >= 0) &&
|
||||||
&& (remove_file(*argv, FILEUTILS_RECUR | FILEUTILS_FORCE) >= 0)
|
(remove_file(*argv, FILEUTILS_RECUR | FILEUTILS_FORCE) >= 0)) {
|
||||||
) {
|
|
||||||
goto RET_0;
|
goto RET_0;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
RET_1:
|
RET_1:
|
||||||
status = 1;
|
status = 1;
|
||||||
}
|
}
|
||||||
|
RET_0:
|
||||||
RET_0:
|
|
||||||
if (dest != last) {
|
if (dest != last) {
|
||||||
free((void *) dest);
|
free((void *) dest);
|
||||||
}
|
}
|
||||||
|
|
||||||
} while (*++argv != last);
|
} while (*++argv != last);
|
||||||
|
|
||||||
exit(status);
|
return (status);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user