X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fshared%2Fcgroup-show.c;h=8ff9be876cba0a3000197f4c327a533ab5222398;hb=ce5792dac67c5ae5656f1f9665b777d44af4cb35;hp=1e14ba6ddb77e92601b02676f9aa49ad2b5b4a53;hpb=3da7a50f847ce5ea6094927cb51bab7eb1818efd;p=elogind.git diff --git a/src/shared/cgroup-show.c b/src/shared/cgroup-show.c index 1e14ba6dd..8ff9be876 100644 --- a/src/shared/cgroup-show.c +++ b/src/shared/cgroup-show.c @@ -25,10 +25,12 @@ #include #include "util.h" +#include "formats-util.h" #include "macro.h" #include "path-util.h" #include "cgroup-util.h" #include "cgroup-show.h" +#include "terminal-util.h" static int compare(const void *a, const void *b) { const pid_t *p = a, *q = b; @@ -43,7 +45,9 @@ static int compare(const void *a, const void *b) { static void show_pid_array(pid_t pids[], unsigned n_pids, const char *prefix, unsigned n_columns, bool extra, bool more, bool kernel_threads, OutputFlags flags) { unsigned i, j, pid_width; - assert(n_pids > 0); + if (n_pids == 0) + return; + qsort(pids, n_pids, sizeof(pid_t), compare); /* Filter duplicates */ @@ -91,7 +95,7 @@ static int show_cgroup_one_by_path(const char *path, const char *prefix, unsigne if (r < 0) return r; - fn = strappenda(p, "/cgroup.procs"); + fn = strjoina(p, "/cgroup.procs"); f = fopen(fn, "re"); if (!f) return -errno; @@ -111,8 +115,7 @@ static int show_cgroup_one_by_path(const char *path, const char *prefix, unsigne if (r < 0) return r; - if (n > 0) - show_pid_array(pids, n, prefix, n_columns, false, more, kernel_threads, flags); + show_pid_array(pids, n, prefix, n_columns, false, more, kernel_threads, flags); return 0; }