浏览代码

Use tmp buffer to redraw()

master
Arun Prakash Jana 5 年前
父节点
当前提交
671a0ef772
找不到此签名对应的密钥 GPG 密钥 ID: A75979F35C080412
共有 1 个文件被更改,包括 11 次插入10 次删除
  1. +11
    -10
      src/nnn.c

+ 11
- 10
src/nnn.c 查看文件

@@ -2738,8 +2738,7 @@ static void populate(char *path, char *lastname)


static void redraw(char *path) static void redraw(char *path)
{ {
static char c;
static char buf[12];
static char buf[NAME_MAX + 65] __attribute__ ((aligned));
static size_t ncols; static size_t ncols;
static int nlines, i, attrs; static int nlines, i, attrs;
static bool mode_changed; static bool mode_changed;
@@ -2869,21 +2868,23 @@ static void redraw(char *path)


/* We need to show filename as it may be truncated in directory listing */ /* We need to show filename as it may be truncated in directory listing */
if (!cfg.blkorder) if (!cfg.blkorder)
mvprintw(LINES - 1, 0, "%d/%d %s[%s]\n", cur + 1, ndents, sort,
unescape(dents[cur].name, NAME_MAX));
snprintf(buf, NAME_MAX + 65, "%d/%d %s[%s]",
cur + 1, ndents, sort, unescape(dents[cur].name, NAME_MAX));
else { else {
xstrlcpy(buf, coolsize(dir_blocks << BLK_SHIFT), 12);
i = snprintf(buf, 64, "%d/%d ", cur + 1, ndents);

if (cfg.apparentsz) if (cfg.apparentsz)
c = 'a';
buf[i++] = 'a';
else else
c = 'd';
buf[i++] = 'd';


mvprintw(LINES - 1, 0,
"%d/%d %cu: %s (%lu files) vol: %s free [%s]\n",
cur + 1, ndents, c, buf, num_files,
i += snprintf(buf + i, 64, "u: %s (%lu files) ",
coolsize(dir_blocks << BLK_SHIFT), num_files);
snprintf(buf + i, NAME_MAX, "vol: %s free [%s]",
coolsize(get_fs_info(path, FREE)), coolsize(get_fs_info(path, FREE)),
unescape(dents[cur].name, NAME_MAX)); unescape(dents[cur].name, NAME_MAX));
} }
printmsg(buf);
} else } else
printmsg("0/0"); printmsg("0/0");
} }


正在加载...
取消
保存