libbb/copy_file.c: use smallints instead of signed chars
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
4907f6ec58
commit
aa4f9a2fd8
@ -78,9 +78,9 @@ int FAST_FUNC copy_file(const char *source, const char *dest, int flags)
|
|||||||
/* NB: each struct stat is ~100 bytes */
|
/* NB: each struct stat is ~100 bytes */
|
||||||
struct stat source_stat;
|
struct stat source_stat;
|
||||||
struct stat dest_stat;
|
struct stat dest_stat;
|
||||||
signed char retval = 0;
|
smallint retval = 0;
|
||||||
signed char dest_exists = 0;
|
smallint dest_exists = 0;
|
||||||
signed char ovr;
|
smallint ovr;
|
||||||
|
|
||||||
/* Inverse of cp -d ("cp without -d") */
|
/* Inverse of cp -d ("cp without -d") */
|
||||||
#define FLAGS_DEREF (flags & (FILEUTILS_DEREFERENCE + FILEUTILS_DEREFERENCE_L0))
|
#define FLAGS_DEREF (flags & (FILEUTILS_DEREFERENCE + FILEUTILS_DEREFERENCE_L0))
|
||||||
@ -147,7 +147,6 @@ int FAST_FUNC copy_file(const char *source, const char *dest, int flags)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Create DEST */
|
|
||||||
if (dest_exists) {
|
if (dest_exists) {
|
||||||
if (!S_ISDIR(dest_stat.st_mode)) {
|
if (!S_ISDIR(dest_stat.st_mode)) {
|
||||||
bb_error_msg("target '%s' is not a directory", dest);
|
bb_error_msg("target '%s' is not a directory", dest);
|
||||||
@ -156,6 +155,7 @@ int FAST_FUNC copy_file(const char *source, const char *dest, int flags)
|
|||||||
/* race here: user can substitute a symlink between
|
/* race here: user can substitute a symlink between
|
||||||
* this check and actual creation of files inside dest */
|
* this check and actual creation of files inside dest */
|
||||||
} else {
|
} else {
|
||||||
|
/* Create DEST */
|
||||||
mode_t mode;
|
mode_t mode;
|
||||||
saved_umask = umask(0);
|
saved_umask = umask(0);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user