summaryrefslogtreecommitdiff
path: root/src/ln.c
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>1997-09-15 14:02:47 +0000
committerJim Meyering <jim@meyering.net>1997-09-15 14:02:47 +0000
commitc2bbb8e875e989f9d3234a116d15afeb9f0125fc (patch)
tree74f7c17ffccc1524966f8c76a974342a24f49811 /src/ln.c
parent1822e3bd6849120d5f02dfadd7a194a853d45779 (diff)
downloadcoreutils-c2bbb8e875e989f9d3234a116d15afeb9f0125fc.tar.xz
(do_link): Perform S_ISLNK test only if lstat succeeded.
Diffstat (limited to 'src/ln.c')
-rw-r--r--src/ln.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/ln.c b/src/ln.c
index 5e480a2a4..abe88f5dd 100644
--- a/src/ln.c
+++ b/src/ln.c
@@ -199,8 +199,9 @@ do_link (const char *source, const char *dest)
&& S_ISDIR (dest_stats.st_mode))
#ifdef S_ISLNK
|| (dereference_dest_dir_symlinks
- && (S_ISLNK (dest_stats.st_mode)
- && isdir (dest)))
+ && (lstat_status == 0
+ && S_ISLNK (dest_stats.st_mode)
+ && isdir (dest)))
#endif
)
{