aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/nnn.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/src/nnn.c b/src/nnn.c
index 1fe6a61..1bc0908 100644
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -2330,32 +2330,30 @@ static void printent(const struct entry *ent, int sel, uint namecols)
{
wchar_t *wstr;
unescape(ent->name, namecols, &wstr);
- const char cp = (ent->flags & FILE_COPIED) ? '+' : ' ';
- char ind[2] = {'\0', '\0'};
- mode_t mode = ent->mode;
+ char ind = '\0';
- switch (mode & S_IFMT) {
+ switch (ent->mode & S_IFMT) {
case S_IFREG:
- if (mode & 0100)
- ind[0] = '*';
+ if (ent->mode & 0100)
+ ind = '*';
break;
case S_IFDIR:
- ind[0] = '/';
+ ind = '/';
break;
case S_IFLNK:
- ind[0] = '@';
+ ind = '@';
break;
case S_IFSOCK:
- ind[0] = '=';
+ ind = '=';
break;
case S_IFIFO:
- ind[0] = '|';
+ ind = '|';
break;
case S_IFBLK: // fallthrough
case S_IFCHR:
break;
default:
- ind[0] = '?';
+ ind = '?';
break;
}
@@ -2365,9 +2363,11 @@ static void printent(const struct entry *ent, int sel, uint namecols)
if (sel)
attron(A_REVERSE);
- printw("%c", cp);
+ addch((ent->flags & FILE_COPIED) ? '+' : ' ');
addwstr(wstr);
- printw("%s\n", ind);
+ if (ind)
+ addch(ind);
+ addch('\n');
if (sel)
attroff(A_REVERSE);