projects
/
oweals
/
busybox.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Replaced projects with products/projects.
[oweals/busybox.git]
/
cp_mv.c
diff --git
a/cp_mv.c
b/cp_mv.c
index ae35bca19ef5bc54f29b04b29350d6943a1a5a04..b15235a2573cda3375f2dd1f5833bd457411884a 100644
(file)
--- a/
cp_mv.c
+++ b/
cp_mv.c
@@
-70,6
+70,7
@@
static const char *cp_mv_usage[] = /* .rodata */
static int recursiveFlag;
static int followLinks;
static int preserveFlag;
static int recursiveFlag;
static int followLinks;
static int preserveFlag;
+static int forceFlag;
static const char *baseSrcName;
static int srcDirFlag;
static const char *baseSrcName;
static int srcDirFlag;
@@
-89,7
+90,7
@@
static
void name_too_long__exit (void)
{
fprintf(stderr, name_too_long, dz);
void name_too_long__exit (void)
{
fprintf(stderr, name_too_long, dz);
- exit
FALSE
;
+ exit
(FALSE)
;
}
static void
}
static void
@@
-167,7
+168,7
@@
cp_mv_Action(const char *fileName, struct stat *statbuf, void* junk)
add_to_ino_dev_hashtable(statbuf, destName);
}
}
add_to_ino_dev_hashtable(statbuf, destName);
}
}
- return copyFile(fileName, destName, preserveFlag, followLinks);
+ return copyFile(fileName, destName, preserveFlag, followLinks
, forceFlag
);
}
static int
}
static int
@@
-200,9
+201,9
@@
extern int cp_mv_main(int argc, char **argv)
argv++;
if (dz_i == is_cp) {
argv++;
if (dz_i == is_cp) {
- recursiveFlag = preserveFlag = FALSE;
+ recursiveFlag = preserveFlag =
forceFlag =
FALSE;
followLinks = TRUE;
followLinks = TRUE;
- while (**argv == '-') {
+ while (*
argv && *
*argv == '-') {
while (*++(*argv)) {
switch (**argv) {
case 'a':
while (*++(*argv)) {
switch (**argv) {
case 'a':
@@
-220,7
+221,7
@@
extern int cp_mv_main(int argc, char **argv)
recursiveFlag = TRUE;
break;
case 'f':
recursiveFlag = TRUE;
break;
case 'f':
- /* for compatibility; busybox cp/mv always does force */
+ forceFlag = TRUE;
break;
default:
usage(cp_mv_usage[is_cp]);
break;
default:
usage(cp_mv_usage[is_cp]);
@@
-229,10
+230,14
@@
extern int cp_mv_main(int argc, char **argv)
argc--;
argv++;
}
argc--;
argv++;
}
+ if (argc < 2) {
+ usage(cp_mv_usage[dz_i]);
+ }
} else { /* (dz_i == is_mv) */
recursiveFlag = preserveFlag = TRUE;
followLinks = FALSE;
}
} else { /* (dz_i == is_mv) */
recursiveFlag = preserveFlag = TRUE;
followLinks = FALSE;
}
+
if (strlen(argv[argc - 1]) > BUFSIZ) {
fprintf(stderr, name_too_long, "cp");
if (strlen(argv[argc - 1]) > BUFSIZ) {
fprintf(stderr, name_too_long, "cp");
@@
-328,10
+333,9
@@
extern int cp_mv_main(int argc, char **argv)
if (flags_memo)
*(baseDestName + baseDestLen) = '\0';
}
if (flags_memo)
*(baseDestName + baseDestLen) = '\0';
}
-// exit_true:
- exit TRUE;
+ return( TRUE);
exit_false:
exit_false:
-
exit FALSE
;
+
return( FALSE)
;
}
/*
}
/*