aboutsummaryrefslogtreecommitdiffstats
path: root/src/nnn.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nnn.c')
-rw-r--r--src/nnn.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/nnn.c b/src/nnn.c
index c6f75cb..a6220bb 100644
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -3446,11 +3446,10 @@ static void printent(const struct entry *ent, uint namecols, bool sel)
ind = '*';
}
- if (ent->flags & HARD_LINK)
- pair = C_HRD;
-
if (!ent->size)
pair = C_UND;
+ else if (ent->flags & HARD_LINK)
+ pair = C_HRD;
else if (!pair)
pair = C_FIL;
break;
@@ -4975,7 +4974,7 @@ static int dentfill(char *path, struct entry **ppdents)
if (S_ISDIR(sb.st_mode))
dentp->flags |= DIR_OR_LINK_TO_DIR;
#if !(defined(__sun) || defined(__HAIKU__)) /* no d_type */
- } else if (dp->d_type == DT_DIR || (dp->d_type == DT_LNK && S_ISDIR(sb.st_mode))) {
+ } else if (dp->d_type == DT_DIR || ((dp->d_type == DT_LNK || dp->d_type == DT_UNKNOWN) && S_ISDIR(sb.st_mode))) {
dentp->flags |= DIR_OR_LINK_TO_DIR;
#endif
}