]> git.wh0rd.org Git - nano.git/commitdiff
use lstat instead of stat in filestat, so we can check for if the file is a symlink...
authorChris Allegretta <chrisa@asty.org>
Thu, 4 Jan 2001 02:49:56 +0000 (02:49 +0000)
committerChris Allegretta <chrisa@asty.org>
Thu, 4 Jan 2001 02:49:56 +0000 (02:49 +0000)
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@438 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

files.c

diff --git a/files.c b/files.c
index 90872778ff6b003213725a53f6321b035f6a1d69..5e1fd5f6184ecb21f74af0f85ad3d83c42a9ed5f 100644 (file)
--- a/files.c
+++ b/files.c
@@ -1054,7 +1054,7 @@ char *input_tab(char *buf, int place, int *lastWasTab, int *newplace)
 struct stat filestat(const char *path) {
     struct stat st;
 
-    stat(path, &st);
+    lstat(path, &st);
     return st;
 }
 
@@ -1327,7 +1327,9 @@ char *do_browser(char *inpath)
            if (S_ISDIR(st.st_mode))
                strcpy(foo + longest - 5, "(dir)");
            else {
-               if (st.st_size < 1024) /* less than 1 K */
+               if (S_ISLNK(st.st_mode))
+                   strcpy(foo + longest - 2, "--");
+               else if (st.st_size < 1024) /* less than 1 K */
                    sprintf(foo + longest - 7, "%4d  B", (int) st.st_size);
                else if (st.st_size > 1073741824) /* at least 1 gig */
                    sprintf(foo + longest - 7, "%4d GB", (int) st.st_size / 1073741824);