OSDN Git Service

Invert FILEUTILS_PRESERVE_SYMLINKS into FILEUTILS_DEREFERENCE.
authorMatt Kraai <kraai@debian.org>
Fri, 5 Oct 2001 01:35:10 +0000 (01:35 -0000)
committerMatt Kraai <kraai@debian.org>
Fri, 5 Oct 2001 01:35:10 +0000 (01:35 -0000)
coreutils/cp.c
coreutils/mv.c
cp.c
include/libbb.h
libbb/copy_file.c
libbb/libbb.h
mv.c

index 82d43ad..8f8fe5e 100644 (file)
@@ -36,7 +36,7 @@ extern int cp_main(int argc, char **argv)
 {
        int status = 0;
        int opt;
-       int flags = 0;
+       int flags = FILEUTILS_DEREFERENCE;
        int i;
 
        while ((opt = getopt(argc, argv, "adfipR")) != -1)
@@ -45,7 +45,7 @@ extern int cp_main(int argc, char **argv)
                        flags |= FILEUTILS_PRESERVE_STATUS | FILEUTILS_RECUR;
                        /* fallthrough */
                case 'd':
-                       flags |= FILEUTILS_PRESERVE_SYMLINKS;
+                       flags &= ~FILEUTILS_DEREFERENCE;
                        break;
                case 'f':
                        flags |= FILEUTILS_FORCE;
@@ -73,9 +73,9 @@ extern int cp_main(int argc, char **argv)
                int source_exists = 1;
                int dest_exists = 1;
 
-               if (((flags & FILEUTILS_PRESERVE_SYMLINKS) &&
+               if ((!(flags & FILEUTILS_DEREFERENCE) &&
                                lstat(argv[optind], &source_stat) < 0) ||
-                               (!(flags & FILEUTILS_PRESERVE_SYMLINKS) &&
+                               ((flags & FILEUTILS_DEREFERENCE) &&
                                 stat(argv[optind], &source_stat))) {
                        if (errno != ENOENT)
                                perror_msg_and_die("unable to stat `%s'", argv[optind]);
index b890abf..1c4a347 100644 (file)
@@ -74,8 +74,8 @@ static int manual_rename(const char *source, const char *dest)
                }
        }
 
-       if (copy_file(source, dest, FILEUTILS_RECUR | FILEUTILS_PRESERVE_STATUS |
-                       FILEUTILS_PRESERVE_SYMLINKS) < 0)
+       if (copy_file(source, dest,
+                       FILEUTILS_RECUR | FILEUTILS_PRESERVE_STATUS) < 0)
                return -1;
 
        if (remove_file(source, FILEUTILS_RECUR | FILEUTILS_FORCE) < 0)
diff --git a/cp.c b/cp.c
index 82d43ad..8f8fe5e 100644 (file)
--- a/cp.c
+++ b/cp.c
@@ -36,7 +36,7 @@ extern int cp_main(int argc, char **argv)
 {
        int status = 0;
        int opt;
-       int flags = 0;
+       int flags = FILEUTILS_DEREFERENCE;
        int i;
 
        while ((opt = getopt(argc, argv, "adfipR")) != -1)
@@ -45,7 +45,7 @@ extern int cp_main(int argc, char **argv)
                        flags |= FILEUTILS_PRESERVE_STATUS | FILEUTILS_RECUR;
                        /* fallthrough */
                case 'd':
-                       flags |= FILEUTILS_PRESERVE_SYMLINKS;
+                       flags &= ~FILEUTILS_DEREFERENCE;
                        break;
                case 'f':
                        flags |= FILEUTILS_FORCE;
@@ -73,9 +73,9 @@ extern int cp_main(int argc, char **argv)
                int source_exists = 1;
                int dest_exists = 1;
 
-               if (((flags & FILEUTILS_PRESERVE_SYMLINKS) &&
+               if ((!(flags & FILEUTILS_DEREFERENCE) &&
                                lstat(argv[optind], &source_stat) < 0) ||
-                               (!(flags & FILEUTILS_PRESERVE_SYMLINKS) &&
+                               ((flags & FILEUTILS_DEREFERENCE) &&
                                 stat(argv[optind], &source_stat))) {
                        if (errno != ENOENT)
                                perror_msg_and_die("unable to stat `%s'", argv[optind]);
index 30f0bb9..bbdbc6c 100644 (file)
@@ -273,7 +273,7 @@ char *simplify_path(const char *path);
 
 enum {
        FILEUTILS_PRESERVE_STATUS = 1,
-       FILEUTILS_PRESERVE_SYMLINKS = 2,
+       FILEUTILS_DEREFERENCE = 2,
        FILEUTILS_RECUR = 4,
        FILEUTILS_FORCE = 8,
        FILEUTILS_INTERACTIVE = 16
index 9c1bba6..d3902ff 100644 (file)
@@ -40,9 +40,9 @@ int copy_file(const char *source, const char *dest, int flags)
        int dest_exists = 1;
        int status = 0;
 
-       if (((flags & FILEUTILS_PRESERVE_SYMLINKS) &&
+       if ((!(flags & FILEUTILS_DEREFERENCE) &&
                        lstat(source, &source_stat) < 0) ||
-                       (!(flags & FILEUTILS_PRESERVE_SYMLINKS) &&
+                       ((flags & FILEUTILS_DEREFERENCE) &&
                         stat(source, &source_stat) < 0)) {
                perror_msg("%s", source);
                return -1;
index 30f0bb9..bbdbc6c 100644 (file)
@@ -273,7 +273,7 @@ char *simplify_path(const char *path);
 
 enum {
        FILEUTILS_PRESERVE_STATUS = 1,
-       FILEUTILS_PRESERVE_SYMLINKS = 2,
+       FILEUTILS_DEREFERENCE = 2,
        FILEUTILS_RECUR = 4,
        FILEUTILS_FORCE = 8,
        FILEUTILS_INTERACTIVE = 16
diff --git a/mv.c b/mv.c
index b890abf..1c4a347 100644 (file)
--- a/mv.c
+++ b/mv.c
@@ -74,8 +74,8 @@ static int manual_rename(const char *source, const char *dest)
                }
        }
 
-       if (copy_file(source, dest, FILEUTILS_RECUR | FILEUTILS_PRESERVE_STATUS |
-                       FILEUTILS_PRESERVE_SYMLINKS) < 0)
+       if (copy_file(source, dest,
+                       FILEUTILS_RECUR | FILEUTILS_PRESERVE_STATUS) < 0)
                return -1;
 
        if (remove_file(source, FILEUTILS_RECUR | FILEUTILS_FORCE) < 0)