summaryrefslogtreecommitdiff
path: root/file.c
diff options
context:
space:
mode:
Diffstat (limited to 'file.c')
-rw-r--r--file.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/file.c b/file.c
index 969c75eb16..bc5071ed8d 100644
--- a/file.c
+++ b/file.c
@@ -3133,6 +3133,7 @@ realpath_rec(long *prefixlenp, VALUE *resolvedp, char *unresolved, VALUE loopche
rb_sys_fail(RSTRING_PTR(testpath));
}
}
+#ifdef HAVE_READLINK
if (S_ISLNK(sbuf.st_mode)) {
volatile VALUE link;
char *link_prefix, *link_names;
@@ -3152,7 +3153,9 @@ realpath_rec(long *prefixlenp, VALUE *resolvedp, char *unresolved, VALUE loopche
}
rb_hash_aset(loopcheck, testpath, rb_str_dup_frozen(*resolvedp));
}
- else {
+ else
+#endif
+ {
VALUE s = rb_str_dup_frozen(testpath);
rb_hash_aset(loopcheck, s, s);
*resolvedp = testpath;