From f91205cbad26df0e2fcda17c800d3f1743d61813 Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Mon, 16 Oct 2017 08:43:29 +0200 Subject: [PATCH] initctl: list, only print whitespace separator between services Signed-off-by: Joachim Nilsson --- src/serv.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/serv.c b/src/serv.c index 1f54feb3..0a0b0192 100644 --- a/src/serv.c +++ b/src/serv.c @@ -63,6 +63,7 @@ static int calc_width(char *arr[], size_t len) static void do_list(const char *heading, const char *path) { int num; + int prev; int width; char buf[screen_cols]; size_t i, len; @@ -89,11 +90,17 @@ static void do_list(const char *heading, const char *path) if ((num - 1) * 2 + num * width > screen_cols) num--; + prev = 0; for (i = 0; i < gl.gl_pathc; i++) { - if (i > 0 && !(i % num)) + if (i > 0 && !(i % num)) { puts(""); + prev = 0; + } - printf("%-*s ", width, gl.gl_pathv[i]); + if (prev) + printf(" "); + printf("%-*s", width, gl.gl_pathv[i]); + prev++; } puts("\n");