]> git.wh0rd.org Git - nano.git/commitdiff
Line up link/unlink/rename check if conditional with top if conditional
authorChris Allegretta <chrisa@asty.org>
Wed, 6 Dec 2000 00:40:26 +0000 (00:40 +0000)
committerChris Allegretta <chrisa@asty.org>
Wed, 6 Dec 2000 00:40:26 +0000 (00:40 +0000)
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@387 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

ChangeLog
files.c

index c91865c7bd24f7283091f122b07c9c63f7d8a120..e98a274c7a095d28328a3ea845d8655a89f9a192 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,6 +7,9 @@ CVS code -
        - We now run check on result of lstat(), not stat(), to be
          safer.  New variable anyexists, we use still use realexists
          later in the program.
+       - OOPS, line up link/unlink/rename check if conditional with 
+         top if conditional.  Option -l has been broken for 9 versions,
+         no one noticed?!
 - winio.c:
   edit_add()
        - Off by one display error (fix by Rocco Corsi).
diff --git a/files.c b/files.c
index c0299e4060544ce6db580767bb7d05c09bca3516..c825844941f661893d57466bb72e1152c1367dd1 100644 (file)
--- a/files.c
+++ b/files.c
@@ -431,7 +431,7 @@ int write_file(char *name, int tmp)
        return -1;
     }
 
-    if (!ISSET(FOLLOW_SYMLINKS) || tmp) {
+    if ((!ISSET(FOLLOW_SYMLINKS) && S_ISLNK(st.st_mode)) || tmp) {
        if (realexists == -1) {
            /* Use default umask as file permisions if file is a new file. */
            mask = umask(0);