From bc6125e609e842ffe02168916bb2ae591638bc07 Mon Sep 17 00:00:00 2001 From: Laurent Mazet Date: Sun, 19 Jan 2025 17:22:23 +0100 Subject: [PATCH] fix long filename display --- display.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/display.c b/display.c index 1d374bf..693eb41 100644 --- a/display.c +++ b/display.c @@ -192,6 +192,9 @@ void displaywindow (window_t *win, list_t *list, int page, int *index_x, int *in int i, j; win->nbcols = win->xsize / (list->width + 1); + if (win->nbcols == 0) { + win->nbcols = 1; + } win->width = win->xsize / win->nbcols; int n = (list->nb + win->nbcols - 1) / win->nbcols; int rem = list->nb - win->nbcols * (list->nb / win->nbcols); @@ -269,7 +272,10 @@ void displaywindow (window_t *win, list_t *list, int page, int *index_x, int *in attron (A_BOLD); attron (A_UNDERLINE); } - mvaddstr (win->yoffset + (j % n) - page, win->xoffset + (j / n) * win->width, elem->name); + int k; + for (k = 0; (k < win->width) && (elem->name[k] != '\0'); k++) { + mvaddch (win->yoffset + (j % n) - page, win->xoffset + (j / n) * win->width + k, elem->name[k]); + } set_color (white); attron (0); if (j == index) { -- 2.30.2